Klávesové zkratky na tomto webu - základní
Přeskočit hlavičku portálu


S Palm Piloty na internet snadno a rychle (2)

aktualizováno 
V minulém dílu jsme si představili knihovnu Net.lib. Jakmile zjistíme referenční číslo knihovny použitím funkce SysLibFind(), můžeme používat funkce, které jsou v knihovně obsažené.

2. Připojení k síti a odpojení od sítě

V minulém dílu jsme si představili knihovnu Net.lib. Jakmile zjistíme referenční číslo knihovny použitím funkce SysLibFind(), můžeme používat funkce, které jsou v knihovně obsažené.

Funkce knihovny Net.lib mají dvě společné věci. První z nich je společná předpona: všechny funkce začínají předponou NetLib.. Druhým společným znakem je, že všechny tyto funkce vyžadují jako první parametr referenční číslo knihovny.

První dvě popisované funkce slouží k připojení a odpojení sítě. Funkci NetLibOpen() voláme při požadavku na připojení k síti internet.

Err NetLibOpen(UInt16 refCislo, UInt16 *chybaInterface)

Připojí počítač Palm Pilot k internetu.

Vstupní parametry
  • refCislo - referenční číslo knihovny Net.lib
Výstupní parametry
  • chybaInterface - hodnota 0 pokud při inicializaci interface nedošlo k chybě. Došlo-li při inicializaci interface k chybě, je v této proměnné uloženo číslo chyby.
Vrácená hodnota
  • 0 - připojení se povedlo bez chyby
  • netErrAlreadyOpen - je-li již Palm Pilot připojen na síť internet
  • Jinak udává vrácená hodnota číslo chyby.

V panelu nastavení musí být nastaveny příslušné parametry (typ připojení modemu, telefonní číslo, uživatelské jméno a heslo). Funkce NetLibOpen() nevyžaduje žádné parametry - pro připojení k internetu je použit standardní modul interface.

Funkce NetLibOpen() vrací dva druhy chybových hodnot. Vrácená hodnota informuje o obecné chybě připojení k síti - například není-li definován žádný modul interface nebo není-li možné přidělit knihovně Net.lib dostatek operační paměti. Do proměnné chybaInterface je uloženo číslo chyby vrácené příslušným modulem interface.

Vrátí-li funkce NetLibOpen() hodnotu netErrAlreadyOpen, znamená to, že při volání této funkce byl počítač Palm Pilot již připojen k síti internet. Obalující funkce pro připojení k internetu může vypadat například takto:

static Boolean SitPripojit()
{
    UInt16 chybaInterface;
    Err chyba;

    chyba = NetLibOpen(gNetLibReference, &chybaInterface);

    if(chyba != 0 && chyba != netErrAlreadyOpen)
    {
        return false;
    }

    if(chybaInterface != 0)
    {
        return false;
    }

    return true;
}

Vrátí-li funkce SitPripojit() hodnotu true, je počítač Palm Pilot připojen k internetu a můžeme používat ostatní funkce knihovny Net.lib. K odpojení od internetu slouží funkce NetLibClose().

Err NetLibClose(UInt16 refCislo, UInt16 ihned)

Odpojí počítač Palm Pilot od internetu.

Vstupní parametry
  • refCislo - referenční číslo knihovny Net.lib
  • ihned - požadavek na okamžité odpojení
Vrácená hodnota
  • 0 - odpojení proběhlo bez chyby
  • netErrStillOpen - připojení k internetu používá i jiná aplikace
  • ostatní hodnoty - při odpojení došlo k chybě nebo Palm Pilot nebyl připojen k internetu

Druhý parametr funkce NetLibClose() může mít hodnotu true, nebo false. Předáme-li funkci NetLibClose() parametr true, bude počítač Palm Pilot od internetu odpojen okamžitě. Bude-li mít tento parametr hodnotu false, počká operační systém PalmOS chvíli na to, zda nezačne používat internet i jiné aplikace. Teprve pokud uplyne nějaká doba bez požadavků na internet, odpojí se.

Různé programy zacházejí s parametrem funkce NetLibClose() různě. Připojujeme-li se pomocí mobilního telefonu, tak jistě uvítáme, odpojí-li se aplikace okamžitě po stisknutí tlačítka. Na druhou stranu, pokud používáme připojení k internetu ve více aplikacích, je jednodušší s odpojením vyčkat. Také můžeme uživateli dát na vybranou, zda se chce při ukončení aplikace odpojit od internetu ihned nebo se zpožděním.

static Boolean SitOdpojitOkamzite()
{
    Err chyba;

    chyba = NetLibClose(gNetLibReference, true);

    if(chyba != 0)
    {
        return false;
    }

    return true;
}

Jsme-li již připojeni k internetu a zavoláme-li podruhé funkci NetLibOpen(), tato funkce vrátí hodnotu netErrAlreadyOpen. Knihovna Net.lib si pamatuje, kolik aplikací ji současně používá (volání funkce NetLibOpen() přičte a volání funkce NetLibClose() odečte jedničku od čítače připojení). Abychom se od internetu úspěšně odpojili, musíme zavolat funkci NetLibClose() tolikrát, kolikrát bylo připojení otevřeno funkcí NetLibOpen().

Err NetLibOpenCount(UInt16 refCislo, UInt16 *počet)

Zjistí, kolik aplikací využívá připojení na internet.

Vstupní parametry
  • refCislo - referenční číslo knihovny Net.lib
Výstupní parametry
  • počet - počet aplikací, které otevřely připojení na internet
Vrácená hodnota
  • vždy 0

Chceme-li zjistit, zda jsme připojeni k internetu, můžeme volat funkci NetLibOpenCount(). Tato funkce uloží do proměnné, jejíž adresu jí předáme, kolik aplikací zavolalo funkci NetLibOpen() k připojení na internet a ještě se neodpojilo. Má-li tato proměnná vyšší hodnotu než nula, je počítač Palm Pilot stále připojen na internet.

static Boolean SitPripojena()
{
    UInt16 pocet;
	
    NetLibOpenCount(gNetLibReference, &pocet);
    return (pocet > 0);
}

Můžeme použít jednoduchou obalující funkci SitPripojena(), která vrátí hodnotu true, je-li možné přistupovat na internet. Všechny obalující funkce, které budeme v tomto článku vytvářet, budou mít předponu Sit... a budou používat globální proměnnou gNetLibReference, ve které bude uloženo referenční číslo knihovny Net.lib.


Příště si nastavíme emulátor POSE tak, abychom na něm mohli vyzkoušet naši první aplikaci, která se jedním stiskem tlačítka k internetu připojí a druhým se odpojí.





Nejčtenější

iPhone 8 Plus
iPhony 8 nejdou na odbyt. Lépe se prodávají i loňské modely

O nové iPhony 8 není ve Spojených státech velký zájem. Dokonce se lépe prodává rok starý iPhone, který výrobce s nástupem modelu 8 zlevnil.  celý článek

KRACK: Key Reinstallation Attacks
Nepříjemné překvapení: I vaše wi-fi je zranitelná, odhalili experti

Bezpečnostní odborníci varují: zabezpečení bezdrátového připojení wi-fi pomocí WPA2 nelze považovat za bezpečné. Výzkumníci upozorňují, že zranitelností...  celý článek

Fidget spinner mobil pořídíte za asi 350 korun.
Hit letošního roku už můžete mít i jako mobil. Stojí několik stovek

Hračka původně určená k relaxaci, fidget spinner, je hitem letošního roku. Její slávy využil výrobce z Hongkongu, který do ní vtěsnal celý funkční mobil....  celý článek

Ilustrační snímek
Pražské metro pokryla wi-fi síť. Zatím pouze v šesti stanicích

V šesti stanicích metra spustil Pražský dopravní podnik (DPP) připojení k internetu prostřednictvím wi-fi. Cestující tak získají nejen přístup k dopravním...  celý článek

Nokia 9
Skvělý start, hodnotí analytici návrat Nokie na trh

Návrat značky Nokia na trh byl doprovázen řadou analýz, které předpovídaly úspěch, nebo naopak krach. Nakonec to vypadá, že se návrat legendární značky může...  celý článek

Další z rubriky

Logo aplikace Sarahah
Už přes ni vyhrožovali smrtí. Přesto je aplikace extrémně populární

Vysoký nárůst popularity zaznamenala aplikace Sarahah, určená k posílání anonymních zpráv. Ačkoliv se v posledních týdnech těší velké oblibě, zahaluje ji také...  celý článek

Ilustrační snímek
Nikam nevolali, přesto mají platit tisíce. Oškubala je „astro aplikace“

Tváří se jako rozšíření oblíbené mobilní hry, ve skutečnosti však ukrývá škodlivý kód. Ten bez vědomí uživatele uskutečňuje hovory na audiotexové linky, které...  celý článek

Simulovaná dopravní nehoda jako praktická ukázka fungování mobilní aplikace...
Záchranku volejte přes aplikaci. Pomoc je rychlejší než při volání na 155

„Záchranná služba, tísňová linka, dobrý den,“ ohlašuje se operátorka volajícímu, který se stal svědkem dopravní nehody. Obratem jej žádá o upřesnění místa,...  celý článek

Najdete na iDNES.cz



mobilní verze
© 1999–2017 MAFRA, a. s., a dodavatelé Profimedia, Reuters, ČTK, AP. Jakékoliv užití obsahu včetně převzetí, šíření či dalšího zpřístupňování článků a fotografií je bez souhlasu MAFRA, a. s., zakázáno. Provozovatelem serveru iDNES.cz je MAFRA, a. s., se sídlem
Karla Engliše 519/11, 150 00 Praha 5, IČ: 45313351, zapsaná v obchodním rejstříku vedeném Městským soudem v Praze, oddíl B, vložka 1328. Vydavatelství MAFRA, a. s., je členem koncernu AGROFERT.