NdisAllocateIoWorkItem-Funktion (ndis.h)
NDIS-Treiber rufen die NdisAllocateIoWorkItem-Funktion auf, um ein Arbeitselement zuzuordnen. Weitere Informationen finden Sie unter NDIS-E/A-Arbeitselemente.
Syntax
NDIS_HANDLE NdisAllocateIoWorkItem(
[in] NDIS_HANDLE NdisObjectHandle
);
Parameter
[in] NdisObjectHandle
Das Handle eines NDIS-Objekts, das einem Geräte- oder Treiberobjekt zugeordnet ist.
Rückgabewert
Wenn NdisAllocateIoWorkItem erfolgreich ein Arbeitselement zuordnet, wird ein Handle an das Arbeitselement zurückgegeben. Wenn ein Fehler auftritt, gibt NdisAllocateIoWorkItemNULL zurück.
Hinweise
NDIS-Miniporttreiber übergeben NdisAllocateIoWorkItem eines von zwei Handles: das Adapterhandle, das NDIS an die MiniportInitializeEx-Funktion übergeben hat, oder das Miniporttreiberhandle, das NDIS zurückgegeben hat, wenn der Miniporttreiber aufgerufen hat. NdisMRegisterMiniportDriver.
NDIS-Filtertreiber können NdisAllocateIoWorkItem das Filtertreiberhandle übergeben, das NDIS zurückgegeben hat, als der Filtertreiber NdisFRegisterFilterDriver aufgerufen hat.
NDIS-Miniporttreiber und Filtertreiber können auch NdisAllocateIoWorkItem das NDIS-Gerätehandle übergeben, das NDIS zurückgegeben hat, als der Treiber NdisRegisterDeviceEx aufgerufen hat. NdisAllocateIoWorkItem ruft das Dem Handle zugeordnete Geräteobjekt oder Treiberobjekt ab und übergibt das Geräteobjekt oder treiberobjekt an die IoAllocateWorkItem-Funktion .
NDIS-Treiber müssen die NdisFreeIoWorkItem-Funktion aufrufen, um die Ressourcen freizugeben, die einem Arbeitselement zugeordnet sind, das NdisAllocateIoWorkItem zugeordnet hat.
Treiber können NdisFreeIoWorkItem in der Rückrufroutine aufrufen, die an NdisQueueIoWorkItem übergeben wird.
Wenn ein Miniporttreiber das Handle verwendet hat, das NDIS beim Aufrufen von NdisAllocateIoWorkItem an MiniportInitializeEx übergeben hat, muss das Arbeitselement vor oder im Aufruf der MiniportHaltEx-Funktion des Treibers freigegeben werden.
Wenn ein Miniporttreiber das Handle verwendet hat, das NdisMRegisterMiniportDriver zurückgegeben hat, wenn der Treiber NdisAllocateIoWorkItem aufgerufen hat, muss der Treiber das Arbeitselement freigeben, bevor der Treiber entladen wird.
Im Allgemeinen muss ein Treiber das Arbeitselement freigeben, bevor der Treiber entladen wird.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt in NDIS 6.0 und höher. |
Zielplattform | Universell |
Header | ndis.h (include Ndis.h) |
Bibliothek | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI-Complianceregeln | Init_NdisAllocateIoWorkItem(ndis), Irql_Miscellaneous_Function(ndis) |