Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Para habilitar SDV para comprobar el controlador NDIS, debe declarar cada función de devolución de llamada mediante un tipo de rol de función de devolución de llamada. Los tipos de rol de función de devolución de llamada se definen en el archivo de encabezado Ndis.h y se incluyen al compilar el controlador con ese archivo de encabezado.
Debe declarar las funciones de devolución de llamada del controlador antes de definir las funciones de devolución de llamada. En el ejemplo de código siguiente se muestra la declaración de tipo de rol de función para la función de devolución de llamada MiniportInitializeEx . Esta función de devolución de llamada debe declararse mediante el tipo de rol MINIPORT_INITIALIZE. En este ejemplo, la función de devolución de llamada se denomina myMiniportInitializeEx.
#include <ndis.h>
MINIPORT_INITIALIZE myMiniportInitializeEx
Si una función callback tiene una declaración de prototipo de función, debe reemplazar el prototipo de función por la declaración de tipo de rol de función. Para obtener más información sobre las declaraciones de tipo de rol de función, consulte el tema Usar declaraciones de tipo de rol de función.
En la tabla siguiente se muestran los tipos de funciones de devolución de llamada y las funciones de devolución de llamada NDIS con las que están asociadas.
Declaraciones de función requeridas
| Función de devolución de llamada del controlador de miniport NDIS | Nombre del tipo de rol |
|---|---|
MINIPORT_ADD_DEVICE |
|
MINIPORT_CANCEL_DIRECT_OID_REQUEST |
|
MINIPORT_CANCEL_OID_REQUEST |
|
MINIPORT_CANCEL_SEND |
|
MINIPORT_CHECK_FOR_HANG (comprobación para detectar bloqueos en miniport) |
|
MINIPORT_DEVICE_PNP_EVENT_NOTIFY |
|
MINIPORT_DIRECT_OID_REQUEST |
|
MINIPORT_DISABLE_INTERRUPT |
|
MINIPORT_DISABLE_MESSAGE_INTERRUPT |
|
MINIPORT_UNLOAD |
|
MINIPORT_ENABLE_INTERRUPT |
|
MINIPORT_ENABLE_MESSAGE_INTERRUPT |
|
MINIPORT_FILTER_RESOURCE_REQUIREMENTS |
|
MINIPORT_HALT |
|
MINIPORT_INITIALIZE |
|
MINIPORT_ISR |
|
MINIPORT_INTERRUPT_DPC |
|
MINIPORT_MESSAGE_INTERRUPT |
|
MINIPORT_MESSAGE_INTERRUPT_DPC |
|
MINIPORT_OID_REQUEST |
|
MINIPORT_PAUSE |
|
MINIPORT_PROCESS_SG_LIST |
|
MINIPORT_REMOVE_DEVICE |
|
MINIPORT_RESET |
|
MINIPORT_RESTART |
|
MINIPORT_RETURN_NET_BUFFER_LISTS |
|
MINIPORT_SEND_NET_BUFFER_LISTS |
|
MINIPORT_SET_OPTIONS |
|
MINIPORT_ALLOCATE_SHARED_MEM_COMPLETE |
|
MINIPORT_SHUTDOWN |
|
MINIPORT_START_DEVICE |
|
MINIPORT_SYNCHRONIZE_INTERRUPT |
|
MINIPORT_SYNCHRONIZE_MESSAGE_INTERRUPT |
| Función adicional de devolución de llamada de NDIS | Nombre del tipo de rol |
|---|---|
NDIS_IO_WORKITEM_ROUTINE Rutina La rutina es la rutina de devolución de llamada que se especifica en el segundo parámetro de la función NdisQueueIoWorkItem . |
NDIS_IO_WORKITEM_FUNCTION |
NDIS_TIMER_FUNCTION |
Declaraciones de función recomendadas
Los siguientes tipos de rol de función no se usan actualmente en reglas de SDV para controladores NDIS; sin embargo, es probable que se usen en el futuro. Estos tipos de funciones son totalmente compatibles con Windows 7 y recomendamos que use sus roles de función específicos para declarar estos callbacks.
| Función de devolución de llamada del controlador de filtro NDIS | Nombre del tipo de rol |
|---|---|
FILTER_ATTACH |
|
FILTER_CANCEL_DIRECT_OID_REQUEST (Cancelación Directa de Solicitud de OID) |
|
FILTER_CANCEL_SEND_NET_BUFFER_LISTS |
|
FILTER_CANCEL_OID_REQUEST |
|
FILTER_DETACH |
|
FILTER_DEVICE_PNP_EVENT_NOTIFY |
|
FILTER_DIRECT_OID_REQUEST |
|
FILTER_DIRECT_OID_REQUEST_COMPLETE |
|
DRIVER_UNLOAD |
|
FILTER_NET_PNP_EVENT |
|
FILTER_OID_REQUEST |
|
FILTER_OID_REQUEST_COMPLETE |
|
PAUSA_DEL_FILTRO |
|
FILTER_RECEIVE_NET_BUFFER_LISTS |
|
REINICIO_DEL_FILTRO |
|
FILTER_RETURN_NET_BUFFER_LISTS |
|
FILTER_SEND_NET_BUFFER_LISTS |
|
FILTER_SEND_NET_BUFFER_LISTS_COMPLETE |
|
FILTRO_ESTABLECER_OPCIONES_DEL_MÓDULO |
|
FILTRO_CONFIGURAR_OPCIONES |
|
ESTADO_DEL_FILTRO |
| Función de devolución de llamada del controlador de miniport de CoNDIS | Nombre del tipo de rol |
|---|---|
MINIPORT_CO_ACTIVATE_VC |
|
MINIPORT_CO_CREATE_VC |
|
MINIPORT_CO_DEACTIVATE_VC |
|
MINIPORT_CO_DELETE_VC |
|
MINIPORT_CO_OID_REQUEST |
|
MINIPORT_CO_SEND_NET_BUFFER_LISTS |
| Función de devolución de llamada del controlador de protocolo NDIS | Nombre del tipo de rol |
|---|---|
PROTOCOL_BIND_ADAPTER_EX |
|
PROTOCOL_CLOSE_ADAPTER_COMPLETE_EX |
|
PROTOCOL_DIRECT_OID_REQUEST_COMPLETE |
|
PROTOCOL_NET_PNP_EVENT |
|
PROTOCOL_OID_REQUEST_COMPLETE |
|
PROTOCOL_OPEN_ADAPTER_COMPLETE_EX |
|
PROTOCOL_RECEIVE_NET_BUFFER_LISTS |
|
PROTOCOL_SEND_NET_BUFFER_LISTS_COMPLETE |
|
PROTOCOL_SET_OPTIONS |
|
PROTOCOL_STATUS_EX |
|
PROTOCOL_UNBIND_ADAPTER_EX |
|
Protocolo_Desinstalación |
| Función de devolución de llamada CL del protocolo NDIS | Nombre del tipo de rol |
|---|---|
PROTOCOL_CL_ADD_PARTY_COMPLETE |
|
PROTOCOL_CL_CALL_CONNECTED |
|
PROTOCOL_CL_CLOSE_AF_COMPLETE |
|
PROTOCOL_CL_CLOSE_CALL_COMPLETE |
|
PROTOCOL_CL_DEREGISTER_SAP_COMPLETE |
|
PROTOCOL_CL_DROP_PARTY_COMPLETE |
|
PROTOCOL_CL_INCOMING_CALL |
|
PROTOCOL_CL_INCOMING_CALL_QOS_CHANGE |
|
PROTOCOL_CL_INCOMING_CLOSE_CALL |
|
PROTOCOLO_CL_ENTRANTE_ELIMINAR_PARTICIPA |
|
PROTOCOL_CL_MAKE_CALL_COMPLETE |
|
PROTOCOL_CL_MODIFY_CALL_QOS_COMPLETE |
|
PROTOCOL_CL_NOTIFY_CLOSE_AF |
|
PROTOCOL_CL_OPEN_AF_COMPLETE |
|
PROTOCOL_CL_OPEN_AF_COMPLETE_EX |
|
PROTOCOL_CL_REGISTER_SAP_COMPLETE |
| Función de devolución de llamada de CM de CoNDIS | Nombre del tipo de rol |
|---|---|
PROTOCOL_CM_ACTIVATE_VC_COMPLETE |
|
PROTOCOL_CM_ADD_PARTY |
|
PROTOCOL_CM_CLOSE_AF |
|
PROTOCOL_CM_CLOSE_CALL |
|
PROTOCOL_CM_DEACTIVATE_VC_COMPLETE |
|
PROTOCOL_CM_DEREGISTER_SAP |
|
PROTOCOL_CM_DROP_PARTY |
|
PROTOCOL_CM_INCOMING_CALL_COMPLETE |
|
PROTOCOLO_CM_HACER_LLAMADA |
|
PROTOCOL_CM_MODIFY_QOS_CALL |
|
PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE |
|
PROTOCOL_CM_OPEN_AF |
|
PROTOCOL_CM_REG_SAP |
| Función de devolución de llamada CoNDIS CO | Nombre del tipo de rol |
|---|---|
PROTCOL_CO_AF_REGISTER_NOTIFY |
|
PROTOCOL_CO_CREATE_VC |
|
PROTOCOL_CO_DELETE_VC |
|
PROTOCOL_CO_OID_REQUEST |
|
PROTOCOL_CO_OID_REQUEST_COMPLETE |
|
PROTOCOL_CO_RECEIVE_NET_BUFFER_LISTS |
|
PROTOCOL_CO_SEND_NET_BUFFER_LISTS_COMPLETE |
|
PROTOCOL_CO_STATUS_EX |