Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Aby umożliwić SDV zweryfikowanie sterownika NDIS, należy zadeklarować każdą funkcję wywołania zwrotnego poprzez użycie typu roli funkcji dla wywołań zwrotnych. Typy ról funkcji wywołania zwrotnego są definiowane w pliku nagłówkowym Ndis.h i są uwzględniane podczas kompilowania sterownika z tym plikiem nagłówkowym.
Przed zadeklarowaniem definicji funkcji wywołania zwrotnego należy zadeklarować funkcje wywołania zwrotnego sterownika. Poniższy przykład kodu przedstawia deklarację roli typu dla funkcji wywołania zwrotnego MiniportInitializeEx. Ta funkcja wywołania zwrotnego musi zostać zadeklarowana z użyciem roli typu MINIPORT_INITIALIZE. W tym przykładzie funkcja wywołania zwrotnego nosi nazwę myMiniportInitializeEx.
#include <ndis.h>
MINIPORT_INITIALIZE myMiniportInitializeEx
Jeśli funkcja wywołania zwrotnego ma deklarację prototypu funkcji, należy zastąpić prototyp funkcji deklaracją typu roli funkcji. Aby uzyskać więcej informacji na temat deklaracji typów ról funkcji, zobacz temat Using Function Role Type Declarations (Używanie deklaracji typów ról funkcji ).
W poniższej tabeli przedstawiono typy ról funkcji wywołania zwrotnego i funkcje wywołania zwrotnego NDIS, z którymi są skojarzone.
Wymagane deklaracje funkcji
| Funkcja wywołania zwrotnego sterownika miniportu NDIS | Nazwa typu roli |
|---|---|
MINIPORT_ADD_DEVICE |
|
MINIPORT_CANCEL_DIRECT_OID_REQUEST |
|
MINIPORT_CANCEL_OID_REQUEST |
|
MINIPORT_CANCEL_SEND |
|
MINIPORT_CHECK_FOR_HANG |
|
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 |
| NDIS inna funkcja wywołania zwrotnego | Nazwa typu roli |
|---|---|
NDIS_IO_WORKITEM_ROUTINE Rutyna Procedura wywołania zwrotnego jest określona w drugim parametrze funkcji NdisQueueIoWorkItem. |
NDIS_IO_WORKITEM_FUNCTION |
NDIS_TIMER_FUNCTION (Funkcja timera NDIS) |
Zalecane deklaracje funkcji
Następujące typy ról funkcji nie są obecnie używane w regułach SDV dla sterowników NDIS; jednak prawdopodobnie będą one używane w przyszłości. Te typy ról funkcji są w pełni obsługiwane w systemie Windows 7 i zalecamy użycie ich określonych typów ról funkcji do deklarowania tych wywołań zwrotnych.
| Funkcja wywołania zwrotnego sterownika filtru NDIS | Nazwa typu roli |
|---|---|
FILTER_ATTACH |
|
FILTER_CANCEL_DIRECT_OID_REQUEST |
|
FILTER_CANCEL_SEND_NET_BUFFER_LISTS |
|
FILTER_CANCEL_OID_REQUEST |
|
FILTER_DETACH |
|
FILTER_DEVICE_PNP_EVENT_NOTIFY |
|
FILTER_DIRECT_OID_REQUEST |
|
Kompletacja żądań OID bezpośredniego filtra |
|
DRIVER_UNLOAD |
|
FILTER_NET_PNP_EVENT |
|
FILTER_OID_REQUEST |
|
FILTER_OID_REQUEST_COMPLETE |
|
FILTER_PAUSE |
|
FILTER_RECEIVE_NET_BUFFER_LISTS |
|
Restart filtrowania |
|
FILTER_RETURN_NET_BUFFER_LISTS |
|
FILTER_SEND_NET_BUFFER_LISTS |
|
FILTER_SEND_NET_BUFFER_LISTS_COMPLETE |
|
USTAW_OPCJE_MODUŁU_FILTROWANIA |
|
FILTER_SET_OPTIONS |
|
FILTER_STATUS |
| Funkcja wywołania zwrotnego miniportu sterownika CoNDIS | Nazwa typu roli |
|---|---|
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 |
| Funkcja wywołania zwrotnego sterownika protokołu NDIS | Nazwa typu roli |
|---|---|
PROTOCOL_BIND_ADAPTER_EX |
|
PROTOCOL_CLOSE_ADAPTER_COMPLETE_EX |
|
PROTOKÓŁ_BEZPOŚREDNIE_ZAPYTANIE_OID_UKOŃCZONE (retain the English acronym for industry consistency) |
|
PROTOCOL_NET_PNP_EVENT |
|
PROTOCOL_OID_REQUEST_COMPLETE |
|
PROTOCOL_OPEN_ADAPTER_COMPLETE_EX |
|
PROTOKÓŁ ODBIERA LISTY BUFÓRÓW SIECIOWYCH |
|
PROTOCOL_SEND_NET_BUFFER_LISTS_COMPLETE |
|
PROTOCOL_SET_OPTIONS |
|
PROTOCOL_STATUS_EX |
|
PROTOCOL_UNBIND_ADAPTER_EX |
|
PROTOKÓŁ_ODINSTALOWANIA |
| Funkcja wywołania zwrotnego CL protokołu NDIS | Nazwa typu roli |
|---|---|
PROTOCOL_CL_ADD_PARTY_COMPLETE |
|
PROTOCOL_CL_CALL_CONNECTED |
|
PROTOCOL_CL_CLOSE_AF_COMPLETE |
|
PROTOCOL_CL_CLOSE_CALL_COMPLETE |
|
PROTOCOL_CL_DEREGISTER_SAP_COMPLETE |
|
PROTOKÓŁ_CL_ZAKOŃCZ_PRZYJĘCIE_KOMPLETNE |
|
PROTOCOL_CL_INCOMING_CALL |
|
PROTOCOL_CL_INCOMING_CALL_QOS_CHANGE |
|
PROTOKÓŁ_CL_PRZYCHODZĄCE_ZAMKNIĘCIE_POŁĄCZENIA |
|
PROTOCOL_CL_INCOMING_DROP_PARTY |
|
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 |
| CoNDIS CM, funkcja wywołania zwrotnego | Nazwa typu roli |
|---|---|
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 |
|
PROTOCOL_CM_MAKE_CALL |
|
PROTOCOL_CM_MODIFY_QOS_CALL |
|
PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE |
|
PROTOCOL_CM_OPEN_AF |
|
PROTOCOL_CM_REG_SAP |
| CoNDIS CO, funkcja wywołania zwrotnego | Nazwa typu roli |
|---|---|
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 |