NPI_CLIENT_ATTACH_PROVIDER_FN 콜백 함수(netioddk.h)
클라이언트 모듈의 ClientAttachProvider 콜백 함수는 클라이언트 모듈을 공급자 모듈에 연결합니다.
구문
NPI_CLIENT_ATTACH_PROVIDER_FN NpiClientAttachProviderFn;
NTSTATUS NpiClientAttachProviderFn(
[in] HANDLE NmrBindingHandle,
[in] PVOID ClientContext,
[in] PNPI_REGISTRATION_INSTANCE ProviderRegistrationInstance
)
{...}
매개 변수
[in] NmrBindingHandle
NMR에서 클라이언트 모듈과 공급자 모듈 간의 바인딩을 나타내는 데 사용하는 핸들입니다.
[in] ClientContext
클라이언트 모듈의 등록 컨텍스트에 대한 포인터입니다. 클라이언트 모듈은 NmrRegisterClient 함수를 호출하여 NMR에 등록할 때 이 포인터를 NMR에 전달합니다.
[in] ProviderRegistrationInstance
에 대한 포인터 NPI_REGISTRATION_INSTANCE 구조체입니다. 이 구조에는 공급자 모듈의 등록 데이터가 포함됩니다.
반환 값
클라이언트 모듈의 ClientAttachProvider 콜백 함수는 다음 NTSTATUS 코드 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
|
클라이언트 모듈과 공급자 모듈이 서로 성공적으로 연결되었습니다. |
|
클라이언트 모듈이 공급자 모듈에 연결되지 않았거나 공급자 모듈이 클라이언트 모듈에 연결되지 않았습니다. |
|
오류가 발생했습니다. |
설명
클라이언트 모듈이 NMR에 등록되면 NMR은 클라이언트 모듈이 클라이언트 모듈로 등록된 동일한 NPI의 공급자로 등록된 각 공급자 모듈에 대해 클라이언트 모듈의 ClientAttachProvider 콜백 함수를 한 번 호출합니다.
또한 NMR은 새 네트워크 모듈이 클라이언트 모듈이 클라이언트로 등록된 동일한 NPI의 공급자로 등록될 때마다 클라이언트 모듈의 ClientAttachProvider 콜백 함수를 호출합니다.
클라이언트 모듈은 공급자 모듈의 등록 데이터를 검사할 수 있습니다. 이 데이터는 ProviderRegistrationInstance 매개 변수가 가리키는 구조에 있습니다. 클라이언트 모듈은 이 데이터를 사용하여 공급자 모듈에 연결할지 여부를 결정합니다.
- 클라이언트 모듈이 공급자 모듈에 연결되도록 결정하는 경우 ClientAttachProvider 콜백 함수는 NmrClientAttachProvider 함수를 호출하여 첨부 파일 프로세스를 계속합니다. 이 경우 ClientAttachProvider 콜백 함수는 에 대한 호출에서 반환되는 상태 코드를 반환해야 합니다. NmrClientAttachProvider 함수입니다.
- 클라이언트 모듈이 공급자 모듈에 연결하지 않을 것으로 판단되면 ClientAttachProvider 콜백 함수는 STATUS_NOINTERFACE 반환해야 합니다.
NMR은 IRQL = PASSIVE_LEVEL 클라이언트 모듈의 ClientAttachProvider 콜백 함수를 호출합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다. |
대상 플랫폼 | Windows |
헤더 | netioddk.h(Wsk.h 포함) |
IRQL | PASSIVE_LEVEL |