Kizárólagos hozzáférés megadása az eszközobjektumokhoz

Ha engedélyezve van egy eszköz kizárólagos hozzáférése, egyszerre csak egy fogópont nyitható meg az eszközhöz. Ahhoz, hogy az I/O-kezelő kizárólagos hozzáférést kényszerítsen ki az eszközhöz, a kizárólagos tulajdonságot be kell állítani az eszközverem nevesített eszközobjektumához.

Olyan WDM-eszközverem esetén, amely rendelkezik oem-sel és FDO-nal is, a kizárólagos tulajdonságot csak az INF-fájl állíthatja be egy INF AddReg-irányelvhasználatával. A PDO a köteg nevesített objektuma, de a buszillesztő (nem maga a függvényillesztő) hozza létre a PDO-t a függvényillesztő nevében. Az egyetlen módja annak, hogy a busz-illesztőprogram számára beállítsa a PDO exkluzív jelzőjét, az osztály vagy az eszköz INF-fájljain keresztül lehetséges. (Az IoCreateDevice rutin hívása létrehozza az FDO-t; az FDO kizárólagos jelölőjének beállítása nincs hatással.)

Azok az illesztőprogramok, amelyek eszközobjektumai nincsenek halmozva, például a nem WDM-illesztőprogramok és a nyers módban működő eszközök, használhatják az IoCreateDeviceSecure rutint a nevesített eszközobjektum kizárólagos tulajdonságának beállításához.

Az I/O-kezelő név alapján kényszeríti ki a kizárólagosságot az elnevezett eszközobjektumokon, függetlenül a záró névtől. Tegyük fel például, hogy az eszközobjektum neve "\Device\DeviceName". Ezután az I/O-kezelő kizárólagosságot kényszerít ki a "\Device\DeviceName\Filename1" megnyitására irányuló kérelemre, majd a "\Device\DeviceName\Filename2" parancsra. Ha az eszközverem két objektuma el van nevezve (ami nem ajánlott), az I/O-kezelő lehetővé teszi, hogy minden objektumhoz egyetlen fogópont nyíljon meg. Ilyen esetben a vezetőknek saját maguknak kell biztosítaniuk a kizárólagosságot a DRIVER_DISPATCH visszahívási függvényeikben. Az I/O-kezelő nem kényszeríti a megnyitás kizárólagosságát egy másik fájlleíróhoz képest. Az eszköz névterében található fájlmegnyitási kérelmekről további információt az Eszköznévtér-hozzáférés szabályozásacímű témakörben talál.