Kvrsoft - milyen port

1. Milyen port

2. Egyes szabályok munka kikötők

Meg kell jegyezni, hogy a fejlesztési programok foglalkoznak a port kell vennie a következő tényezőket:

Próbáld meg használni a magasabb szintű funkciókat elérni a portok (különösen WinAPI), és nem használja az alacsony szintű olvasási / írási műveletek port. Ha úgy dönt, hogy írjon az alacsony szintű olvasási ezeket az eljárásokat kell tenni egy külön DLL vagy VXD, az alábbi okok miatt - köztudott, hogy az operációs rendszer Windows 95/98 és NT Különösen fogva multitasking rendszerek. Azaz, ha a programot kifejezetten utal a port nem pedig a dinamikus hívás DLL funkciók vagy VXD (használat DLL mechanizmus) közvetlenül és ez hatással lehet a helyes működését a rendszer, vagy akár kitölteni. És még ha a Windows95 / 98 ez a megközelítés jól működni a Windows NT, mert az építészet nem teszi lehetővé a közvetlen írási / olvasási közvetlenül, és a használata DLL vagy VXD mechanizmus lehetővé teszi, hogy megkerülje ezt a problémát.

Ha dolgozik néhány nem szabványos input-output port (pl port tárolása az állam a távirányító gombjait TVTunera akkor biztosan van egy DLL szolgáltatott natív szoftverek vagy VXD irányítani az eszközt, és már nem kell írni a kódot, úgyhogy dolgozni a távirányító TVTunera szabványos DLL a készletben, akkor azonnal úgy döntött kapcsolatos kérdések kezelésével port a tuner)

Így a visszavonulás - egy kis gyakorlás ...

funkció PortInit: logikai; // inicializálja

f: = Windows.CreateFile (PChar ( 'COM1'), GENERIC_READ vagy

FILE_SHARE_READ vagy FILE_SHARE_WRITE,

GENERIC_WRITE, 0, nulla,

Mutató egy null-terminált (PCHAR), amely megadja a nevét, az újonnan épített objektum (fájl, csatorna, mail slot, a kommunikációs erőforrás (ebben az esetben a port), a lemez eszközt, konzol, vagy könyvtár)

Típusát jelzi az objektum elérését értéket veszi

GENERIC_READ - olvasható

GENERIC_WRITE - (predostovlyaet teljes hozzáférést a keverési művelet GENERIC_READ GENERIC_READ és GENERIC_WRITE) rögzítésére

Állítsa be a bit zászlók, amelyek meghatározzák, hogy a tárgy lehet bontani ahhoz való hozzáférés. Ha dwShareMode - 0, a tárgy nem lehet megosztani. A szekvenciát a nyitás a tárgy sikertelen lesz, amíg a fogantyú (fogantyú) Nyissa az objektum zárva van. Tény, hogy ez adott exkluzív hozzáférést.

Ahhoz, hogy külön a tárgy (cél) kombinációját használják egy vagy több, a következő értékek:

FILE_SHARE_DELETE (csak Windows NT)

SECURITY_ATTRIBUTES mutatót a struktúrát, amely meghatározza, hogy a visszaküldött fogantyú örökölheti gyermek folyamatokat. Ha lpSecurityAttributes ZERO, a marker nem örökölhető. Csak amit a Windows NT.

Meghatározza a viselkedését a funkciót, ha az objektum már létezik, és hogyan lesz nyitva ebben az esetben az alábbi értékeket:

Létrehoz egy új objektumot (fájlt) hibát dob, ha az objektum (fájl) már létezik.

Létrehoz egy új objektum (fájl) függvény felülírja a meglévő objektum (fájl)

Megnyitja objektum (fájl) hibát dob, ha az objektum (fájl) nem létezik. (A részletesebb pillantást SDK)

Megnyitja objektum (fájl), ha létezik. Ha egy objektum (fájl) nem létezik, a függvény létrehozza azt, ha voltak dwCreationDistribution CREATE_NEW.

Megnyitja objektum (fájl). Ezt követően az objektum (fájl) csonka nullához, ha az említett hiba razmera.Vydaet objektum (fájl) nem létezik.

attribútumok az objektum (fájl) attribútumok is kombinálható

Meghatározza a fogantyút GENERIC_READ hozzáférést egy ideiglenes objektum (fájl). Ideiglenes objektum (fájl) látja fájlattribútumok és a kiterjesztett attribútumok a teremtett tárgy (fájl) csak Windows NT Windows 95: Ezt az értéket kell beállítani Nil.

Ha a függvény sikeres, a visszatérési érték - egy nyílt fogantyút az objektum (fájl). Ha a fájl nem létezik - 0.

Ha az üzemzavarok történt, a visszatérési érték - INVALID_HANDLE_VALUE. Ahhoz, hogy a kiterjesztett hiba információért hívja GetLastError.

Kikötőkre, dwCreationDistribution paramétert kell OPEN_EXISTING, és meg kell hTemplate Nil. Access-olvasható egyértelműen meg kell határozni.

A szerkezet tartalmaz egy biztonsági leírást a tárgy, és meghatározza, hogy a fogantyú lehet a gyerek által örökölt.

typedef struct _SECURITY_ATTRIBUTES

Meghatározza a mérete bájtokban, ennek a szerkezetnek. Ezt az értéket a méret a szerkezet SECURITY_ATTRIBUTES Windows NT használó funkciók SECURITY_ATTRIBUTES szerkezet, nem ellenőrzik az érték nLength.

Leíró jelző leíró a védelem tárgyát, ha nyél üres objektum lehet hozzárendelni az öröklés gyermek folyamatokat.

Ez határozza meg, hogy a visszaküldött fogantyú öröklődik, amikor egy új leíró jön létre. Ha ez az érték TRUE vesz egy új leíró örökli a fejét.

SECURITY_ATTRIBUTES Pointer olyan szerkezetet használunk paraméterként a legtöbb ablakozási funkciókat a Win32 API-t.

Kapcsolódó cikkek