NDIS_PROTOCOL_DRIVER_CHARACTERISTICS 구조체(ndis.h)

드라이버 특성을 지정하기 위해 프로토콜 드라이버는 NDIS_PROTOCOL_DRIVER_CHARACTERISTICS 구조를 초기화하고 NDIS에 전달합니다.

구문

typedef struct _NDIS_PROTOCOL_DRIVER_CHARACTERISTICS {
  NDIS_OBJECT_HEADER                     Header;
  UCHAR                                  MajorNdisVersion;
  UCHAR                                  MinorNdisVersion;
  UCHAR                                  MajorDriverVersion;
  UCHAR                                  MinorDriverVersion;
  ULONG                                  Flags;
  NDIS_STRING                            Name;
  SET_OPTIONS_HANDLER                    SetOptionsHandler;
  BIND_HANDLER_EX                        BindAdapterHandlerEx;
  UNBIND_HANDLER_EX                      UnbindAdapterHandlerEx;
  OPEN_ADAPTER_COMPLETE_HANDLER_EX       OpenAdapterCompleteHandlerEx;
  CLOSE_ADAPTER_COMPLETE_HANDLER_EX      CloseAdapterCompleteHandlerEx;
  NET_PNP_EVENT_HANDLER                  NetPnPEventHandler;
  UNINSTALL_PROTOCOL_HANDLER             UninstallHandler;
  OID_REQUEST_COMPLETE_HANDLER           OidRequestCompleteHandler;
  STATUS_HANDLER_EX                      StatusHandlerEx;
  RECEIVE_NET_BUFFER_LISTS_HANDLER       ReceiveNetBufferListsHandler;
  SEND_NET_BUFFER_LISTS_COMPLETE_HANDLER SendNetBufferListsCompleteHandler;
  DIRECT_OID_REQUEST_COMPLETE_HANDLER    DirectOidRequestCompleteHandler;
} NDIS_PROTOCOL_DRIVER_CHARACTERISTICS, *PNDIS_PROTOCOL_DRIVER_CHARACTERISTICS;

멤버

Header

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS 구조체의 NDIS_OBJECT_HEADER 구조체입니다. 헤더가 지정하는 구조체의 Type 멤버를 NDIS_OBJECT_TYPE_PROTOCOL_DRIVER_CHARACTERISTICS 설정합니다.

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS 구조체의 버전을 나타내려면 수정 멤버를 다음 값 중 하나로 설정합니다.

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_2

NDIS 6.1용 DirectOidRequestCompleteHandler 멤버가 추가되었습니다.

Size 멤버를 NDIS_SIZEOF_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_2 설정합니다.

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_1

NDIS 6.0의 원래 버전입니다.

Size 멤버를 NDIS_SIZEOF_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_1 설정합니다.

MajorNdisVersion

프로토콜 드라이버에서 사용 중인 NDIS 라이브러리의 주 버전입니다. 현재 값이 0x06.

MinorNdisVersion

부 NDIS 버전입니다. 다음은 사용 가능한 부 버전 값 설정입니다.

의미
0 NDIS 6
20 NDIS 6.20
30 NDIS 6.30
40 NDIS 6.40
50 NDIS 6.50
51 NDIS 6.51
60 NDIS 6.60
70 NDIS 6.70
80 NDIS 6.80
81 NDIS 6.81
82 NDIS 6.82
83 NDIS 6.83
84 NDIS 6.84
85 NDIS 6.85
86 NDIS 6.86

MajorDriverVersion

프로토콜 드라이버의 주 버전 번호에 예약됩니다. 프로토콜 드라이버는 필요한 값을 지정할 수 있습니다.

MinorDriverVersion

프로토콜 드라이버의 부 버전 번호에 대해 예약됩니다. 프로토콜 드라이버는 필요한 값을 지정할 수 있습니다.

Flags

NDIS용으로 예약됩니다. 프로토콜 드라이버는 이 멤버를 0으로 설정해야 합니다.

Name

프로토콜 드라이버의 서비스 이름인 유니코드 문자열입니다.

SetOptionsHandler

ProtocolSetOptions 함수의 진입점입니다.

BindAdapterHandlerEx

ProtocolBindAdapterEx 함수의 진입점입니다.

UnbindAdapterHandlerEx

ProtocolUnbindAdapterEx 함수의 진입점입니다.

OpenAdapterCompleteHandlerEx

ProtocolOpenAdapterCompleteEx 함수의 진입점입니다.

CloseAdapterCompleteHandlerEx

ProtocolCloseAdapterCompleteEx 함수의 진입점입니다.

NetPnPEventHandler

호출자의 ProtocolNetPnPEvent 함수의 진입점입니다.

UninstallHandler

호출자의 ProtocolUninstall 함수(있는 경우) 또는 NULL의 진입점입니다.

OidRequestCompleteHandler

호출자의 ProtocolOidRequestComplete 함수의 진입점입니다.

StatusHandlerEx

호출자의 ProtocolStatusEx 함수(있는 경우) 또는 NULL의 진입점입니다.

ReceiveNetBufferListsHandler

ProtocolReceiveNetBufferLists 함수의 진입점입니다.

SendNetBufferListsCompleteHandler

ProtocolSendNetBufferListsComplete 함수의 진입점입니다.

DirectOidRequestCompleteHandler

호출자의 ProtocolDirectOidRequestComplete 함수의 진입점입니다. 선택적 함수입니다. 프로토콜 드라이버가 직접 OID 요청 인터페이스를 지원하지 않는 경우 이 진입점을 NULL 로 설정합니다.

설명

프로토콜 드라이버는 NdisRegisterProtocolDriver 함수를 호출하여 프로토콜 드라이버 함수(ProtocolXxx)에 대한 기본 진입점을 포함하여 특성을 등록합니다. 프로토콜 드라이버는 NDIS_PROTOCOL_DRIVER_CHARACTERISTICS 구조를 초기화하고 NdisRegisterProtocolDriverProtocolCharacteristics 매개 변수에서 이 구조에 대한 포인터를 전달합니다.

요구 사항

   
지원되는 최소 클라이언트 NDIS 6.0 이상에서 지원됩니다.
헤더 ndis.h(Ndis.h 포함)

참고 항목

NdisRegisterProtocolDriver

ProtocolBindAdapterEx

ProtocolCloseAdapterCompleteEx

ProtocolDirectOidRequestComplete

ProtocolNetPnPEvent

ProtocolOidRequestComplete

ProtocolOpenAdapterCompleteEx

ProtocolReceiveNetBufferLists

ProtocolSendNetBufferListsComplete

ProtocolSetOptions

ProtocolStatusEx

ProtocolUnbindAdapterEx

ProtocolUninstall