NdisMRegisterUnloadHandler 함수(ndis.h)

참고 NDIS 5. x 는 더 이상 사용되지 않으며 NDIS 6으로 대체됩니다. x. 새로운 NDIS 드라이버 개발은 Windows Vista로 시작하는 네트워크 드라이버를 참조하세요. NDIS 5 포팅에 대한 자세한 내용입니다. x 드라이버를 NDIS 6으로. x, NDIS 5.x 드라이버를 NDIS 6.0으로 포팅을 참조하세요.

NdisMRegisterUnloadHandler 함수는 드라이버에 대한 언로드 처리기를 등록합니다.

구문

void NdisMRegisterUnloadHandler(
  [in] NDIS_HANDLE    NdisWrapperHandle,
  [in] PDRIVER_UNLOAD UnloadHandler
);

매개 변수

[in] NdisWrapperHandle

NdisMInitializeWrapper에서 반환된 핸들을 지정합니다.

[in] UnloadHandler

드라이버의 언로드 루틴에 대한 진입점을 지정합니다. 언로드 루틴은 다음과 같이 선언됩니다.

VOID
(*PDRIVER_UNLOAD) (
    IN struct _DRIVER_OBJECT *DriverObject
    );

반환 값

없음

설명

DriverEntryNdisMRegisterMiniport 또는 NdisIMRegisterLayeredMiniport를 호출한 후 드라이버가 DriverEntry 함수에서 NdisMRegisterUnloadHandler를 호출합니다. NdisMRegisterUnloadHandler 는 드라이버에 대한 언로드 처리기를 등록합니다.

언로드 처리기의 기능은 드라이버별로 다릅니다. 예를 들어 중간 드라이버는 중간 드라이버의 프로토콜 부분을 등록 취소하기 위해 NdisDeregisterProtocol 을 호출하는 언로드 처리기를 등록해야 합니다. 언로드 처리기는 드라이버의 프로토콜 부분에서 사용하는 리소스 할당 취소와 같은 필요한 정리 작업도 수행해야 합니다.

둘 이상의 미니포트 드라이버 instance 모니터링하는 부하 분산 미니포트 드라이버와 같은 미니포트 드라이버는 모니터링하는 미니포트 드라이버 인스턴스가 중지된 후 상태 정보를 정리하고 리소스의 할당을 취소하는 언로드 처리기를 등록해야 합니다. 언로드 처리기는 MiniportHalt 함수와 다릅니다. 언로드 처리기에는 전역 scope 있는 반면 MiniportHalt 함수의 scope 특정 미니포트 드라이버 instance 제한됩니다.

  • 대상 플랫폼: 유니버설
  • 버전: Windows Vista의 NDIS 6.0 드라이버에는 지원되지 않습니다. 대신 NdisMRegisterMiniportDriver를 사용합니다. Windows Vista 및 Windows XP에서 NDIS 5.1 드라이버에 대해 지원됩니다.

요구 사항

요구 사항
헤더 ndis.h(Ndis.h 포함)
라이브러리 Ndis.lib
IRQL PASSIVE_LEVEL

추가 정보