NdisIfRegisterProvider-Funktion (ndis.h)
Die NdisIfRegisterProvider-Funktion registriert einen NDIS-Netzwerkschnittstellenanbieter.
Syntax
NDIS_STATUS NdisIfRegisterProvider(
[in] PNDIS_IF_PROVIDER_CHARACTERISTICS ProviderCharacteristics,
[in] NDIS_HANDLE IfProviderContext,
PNDIS_HANDLE pNdisIfProviderHandle
);
Parameter
[in] ProviderCharacteristics
Ein Zeiger auf einen vom Anrufer bereitgestellten NDIS_IF_PROVIDER_CHARACTERISTICS Struktur. Diese Struktur definiert die Merkmale des Anbieters, einschließlich der Einstiegspunkte für seine Anbieterrückruffunktionen.
[in] IfProviderContext
Ein Handle für einen vom Aufrufer bereitgestellten Kontextbereich für diesen Netzwerkschnittstellenanbieter. Legen Sie diesen Parameter auf NULL fest, wenn kein Kontextbereich vorhanden ist.
pNdisIfProviderHandle
Ein Zeiger auf eine vom Aufrufer bereitgestellte Handle-Variable. Wenn der Registrierungsvorgang erfolgreich ist, schreibt NDIS ein Handle in diese Variable, das den Netzwerkschnittstellenanbieter identifiziert. Der Schnittstellenanbieter sollte dieses Handle für die Verwendung in nachfolgenden Aufrufen beibehalten, die ein Schnittstellenanbieterhandle erfordern.
Rückgabewert
NdisIfRegisterProvider gibt einen der folgenden status Werte zurück:
Rückgabecode | Beschreibung |
---|---|
|
Der Vorgang wurde erfolgreich abgeschlossen. |
|
Der Vorgang ist aufgrund unzureichender Ressourcen fehlgeschlagen. |
|
Fehler beim Registrieren des Anbieters durch NdisIfRegisterProvider NDIS_IF_PROVIDER_CHARACTERISTICS Struktur am Parameter ProviderCharacteristics enthielt ungültige Memberdaten. |
|
NdisIfRegisterProvider konnte den Anbieter nicht registrieren, da der Headermember in NDIS_IF_PROVIDER_CHARACTERISTICS eine nicht unterstützte Strukturversion angibt. |
Hinweise
NDIS-Treiber rufen die NdisIfRegisterProvider-Funktion während der Initialisierung einmal auf, um sich als NDIS-Schnittstellenanbieter zu registrieren. Beispielsweise kann der Treiber NdisIfRegisterProvider über seine DriverEntry-Routine aufrufen. Ein Schnittstellenanbieter ist eine Softwarekomponente, die Netzwerkschnittstellen zur Unterstützung des MIB verwaltet ( RFC 2863).
Um Schnittstellenanbieter-OID-Anforderungen zu behandeln, stellen Schnittstellenanbieter Einstiegspunkte für Rückruffunktionen in der NDIS_IF_PROVIDER_CHARACTERISTICS Struktur am ProviderCharacteristics-Parameter von NdisIfRegisterProvider.
NDIS-Schnittstellenanbieter rufen die NdisIfRegisterInterface-Funktion auf, um eine Netzwerkschnittstelle zu registrieren. Ein Anbieter kann mehrere Schnittstellen registrieren.
Wenn NdisIfRegisterProvider erfolgreich ist, wird ein Handle an der Position zurückgegeben, auf die der pNdisProviderHandle-Parameter verweist. Der Schnittstellenanbieter sollte dieses Handle für die Verwendung in nachfolgenden Aufrufen beibehalten, die ein Schnittstellenanbieterhandle erfordern. Beispielsweise muss ein Treiber NdisIfDeregisterProvider aufrufen, bevor der Treiber entladen wird.
Eine Komponente, die kein Schnittstellenanbieter mehr ist, kann die NdisIfDeregisterProvider-Funktion jederzeit aufrufen, um die Schnittstellenanbieterressourcen freizugeben, die NDIS zugewiesen hat, wenn der Treiber NdisIfRegisterProvider aufgerufen hat.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt in NDIS 6.0 und höher. |
Zielplattform | Desktop |
Kopfzeile | ndis.h (einschließlich Ndis.h) |
Bibliothek | Ndis.lib |
IRQL | PASSIVE_LEVEL |
DDI-Complianceregeln | Irql_Interfaces_Function(ndis) |