NmrRegisterClient 함수(netioddk.h)

NmrRegisterClient 함수는 NMR에 클라이언트 모듈을 등록합니다.

구문

NTSTATUS NmrRegisterClient(
  [in]  PNPI_CLIENT_CHARACTERISTICS ClientCharacteristics,
  [in]  __drv_aliasesMem PVOID      ClientContext,
  [out] PHANDLE                     NmrClientHandle
);

매개 변수

[in] ClientCharacteristics

에 대한 포인터 클라이언트 모듈의 특성을 설명하는 NPI_CLIENT_CHARACTERISTICS 구조체입니다. 클라이언트 모듈은 클라이언트 모듈이 NMR에 등록된 한 이 구조가 유효하고 메모리에 상주하는지 확인해야 합니다.

[in] ClientContext

등록을 위해 호출자가 제공한 컨텍스트에 대한 포인터입니다. 클라이언트 모듈은 이 컨텍스트를 사용하여 클라이언트 등록 상태를 추적합니다. 클라이언트 모듈의 등록 컨텍스트 콘텐츠는 NMR에 불투명합니다. NMR은 클라이언트 모듈의 ClientAttachProvider 콜백 함수를 호출할 때마다 이 포인터를 클라이언트 모듈에 전달합니다. 클라이언트 모듈은 클라이언트 모듈이 NMR에 등록된 한 등록 컨텍스트가 유효하고 메모리에 상주하는지 확인해야 합니다.

[out] NmrClientHandle

NMR에서 클라이언트 모듈의 등록을 나타내는 데 사용하는 핸들을 수신하는 변수에 대한 포인터입니다. 클라이언트 모듈은 이 핸들을 저장하고 NMR에서 등록을 취소할 때 NmrDeregisterClient 함수에 매개 변수로 전달해야 합니다.

반환 값

NmrRegisterClient 함수는 다음 NTSTATUS 코드 중 하나를 반환합니다.

반환 코드 설명
STATUS_SUCCESS
NMR이 클라이언트 모듈을 성공적으로 등록했습니다.
STATUS_INSUFFICIENT_RESOURCES
NMR에 클라이언트 모듈을 등록하기에 충분한 시스템 리소스가 없습니다.
기타 상태 코드
오류가 발생했습니다.

설명

클라이언트 모듈은 NmrRegisterClient 함수를 호출하여 동일한 NPI 의 공급자로 등록하는 공급자 모듈에 연결할 수 있도록 NPI의 클라이언트로 등록합니다.

클라이언트 모듈은 일반적으로 다른 모든 초기화 작업을 완료한 후 DriverEntry 함수에서 NmrRegisterClient 함수를 호출합니다. NmrRegisterClient 함수에 대한 호출은 클라이언트 모듈이 클라이언트 모듈이 클라이언트로 등록된 동일한 NPI의 공급자로 등록되었거나 등록할 공급자 모듈에 연결할 준비가 되었음을 NMR에 나타냅니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다.
대상 플랫폼 데스크톱
머리글 netioddk.h(Wsk.h 포함)
라이브러리 Netio.lib
IRQL PASSIVE_LEVEL

추가 정보

DriverEntry

NPI_CLIENT_CHARACTERISTICS

NmrDeregisterClient