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 코드 중 하나를 반환합니다.
반환 코드 | 묘사 |
---|---|
|
NMR이 클라이언트 모듈을 성공적으로 등록했습니다. |
|
NMR에 클라이언트 모듈을 등록하기에 충분한 시스템 리소스가 없습니다. |
|
오류가 발생했습니다. |
발언
클라이언트 모듈은 NmrRegisterClient 함수를 호출하여 동일한 NPI의 공급자로 등록하는 공급자 모듈에 연결할 수 있도록 NPI 클라이언트로 등록합니다.
클라이언트 모듈은 일반적으로 다른 모든 초기화 작업을 완료한 후 DriverEntry 함수에서 NmrRegisterClient 함수를 호출합니다. NmrRegisterClient 함수에 대한 호출은 클라이언트 모듈이 등록되었거나 클라이언트 모듈이 클라이언트로 등록된 동일한 NPI 공급자로 등록할 공급자 모듈에 연결할 준비가 되었음을 NMR에 나타냅니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다. |
대상 플랫폼 | 바탕 화면 |
헤더 | netioddk.h(Wsk.h 포함) |
라이브러리 | Netio.lib |
IRQL | PASSIVE_LEVEL |