Función NdisIfRegisterProvider (ndis.h)
La función NdisIfRegisterProvider registra un proveedor de interfaz de red NDIS.
Sintaxis
NDIS_STATUS NdisIfRegisterProvider(
[in] PNDIS_IF_PROVIDER_CHARACTERISTICS ProviderCharacteristics,
[in] NDIS_HANDLE IfProviderContext,
PNDIS_HANDLE pNdisIfProviderHandle
);
Parámetros
[in] ProviderCharacteristics
Puntero a un llamador proporcionado NDIS_IF_PROVIDER_CHARACTERISTICS estructura. Esta estructura define las características del proveedor, incluidos los puntos de entrada para sus funciones de devolución de llamada del proveedor.
[in] IfProviderContext
Identificador de un área de contexto proporcionada por el autor de la llamada para este proveedor de interfaz de red. Establezca este parámetro en NULL si no hay ningún área de contexto.
pNdisIfProviderHandle
Puntero a una variable de identificador proporcionada por el autor de la llamada. Si la operación de registro se realiza correctamente, NDIS escribe un identificador en esta variable que identifica el proveedor de la interfaz de red. El proveedor de interfaz debe conservar este identificador para su uso en llamadas posteriores que requieren un identificador de proveedor de interfaz.
Valor devuelto
NdisIfRegisterProvider devuelve uno de los siguientes valores de estado:
Código devuelto | Descripción |
---|---|
|
La operación se ha completado correctamente. |
|
Error en la operación debido a recursos insuficientes. |
|
NdisIfRegisterProvider no pudo registrar el proveedor porque NDIS_IF_PROVIDER_CHARACTERISTICS estructura en el parámetro ProviderCharacteristics contenía datos de miembro no válidos. |
|
NdisIfRegisterProvider no pudo registrar el proveedor porque el miembro Header de NDIS_IF_PROVIDER_CHARACTERISTICS especifica una versión de estructura que no se admite. |
Comentarios
Los controladores NDIS llaman a la función NdisIfRegisterProvider una vez durante la inicialización para registrarse como proveedor de interfaz NDIS. Por ejemplo, el controlador puede llamar a NdisIfRegisterProvider desde su rutina DriverEntry . Un proveedor de interfaz es un componente de software que administra interfaces de red para admitir el MIB ( RFC 2863).
Para controlar las solicitudes OID del proveedor de interfaz, los proveedores de interfaz proporcionan puntos de entrada para las funciones de devolución de llamada en . NDIS_IF_PROVIDER_CHARACTERISTICS estructura en el parámetro ProviderCharacteristics de NdisIfRegisterProvider.
Los proveedores de interfaz NDIS llaman a la función NdisIfRegisterInterface para registrar una interfaz de red. Un proveedor puede registrar varias interfaces.
Si NdisIfRegisterProvider se realiza correctamente, devuelve un identificador en la ubicación a la que apunta el parámetro pNdisProviderHandle . El proveedor de interfaz debe conservar este identificador para su uso en llamadas posteriores que requieren un identificador de proveedor de interfaz. Por ejemplo, un controlador debe llamar a NdisIfDeregisterProvider antes de que se descargue el controlador.
Un componente que ya no es un proveedor de interfaz puede llamar a la función NdisIfDeregisterProvider en cualquier momento para liberar los recursos del proveedor de interfaz asignados cuando el controlador llamó a NdisIfRegisterProvider.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Se admite en NDIS 6.0 y versiones posteriores. |
Plataforma de destino | Escritorio |
Encabezado | ndis.h (incluya Ndis.h) |
Library | Ndis.lib |
IRQL | PASSIVE_LEVEL |
Reglas de cumplimiento de DDI | Irql_Interfaces_Function(ndis) |