NSPV2_ROUTINE 구조체(ws2spi.h)
NSPV2_ROUTINE 구조에는 네임스페이스 서비스 공급자 버전 2(NSPv2) 공급자가 구현한 함수에 대한 정보가 포함되어 있습니다.
구문
typedef struct _NSPV2_ROUTINE {
DWORD cbSize;
DWORD dwMajorVersion;
DWORD dwMinorVersion;
LPNSPV2STARTUP NSPv2Startup;
LPNSPV2CLEANUP NSPv2Cleanup;
LPNSPV2LOOKUPSERVICEBEGIN NSPv2LookupServiceBegin;
LPNSPV2LOOKUPSERVICENEXTEX NSPv2LookupServiceNextEx;
LPNSPV2LOOKUPSERVICEEND NSPv2LookupServiceEnd;
LPNSPV2SETSERVICEEX NSPv2SetServiceEx;
LPNSPV2CLIENTSESSIONRUNDOWN NSPv2ClientSessionRundown;
} NSPV2_ROUTINE, *PNSPV2_ROUTINE, *LPNSPV2_ROUTINE;
멤버
cbSize
형식:DWORD
구조체의 크기(바이트)입니다.
dwMajorVersion
형식:DWORD
이 공급자가 지원하는 서비스 공급자 사양의 주 버전입니다.
dwMinorVersion
형식:DWORD
이 공급자가 지원하는 서비스 공급자 사양의 부 버전입니다.
NSPv2Startup
형식: ** LPNSPV2STARTUP**
이 NSPv2 공급자에 대한 NSPv2Startup 함수에 대한 포인터입니다.
NSPv2Cleanup
형식: LPNSPV2CLEANUP
이 NSPv2 공급자에 대한 NSPv2Cleanup 함수에 대한 포인터입니다.
NSPv2LookupServiceBegin
형식: LPNSPV2LOOKUPSERVICEBEGIN
이 NSPv2 공급자에 대한 NSPv2LookupServiceBegin 함수에 대한 포인터입니다.
NSPv2LookupServiceNextEx
형식: LPNSPV2LOOKUPSERVICENEXTEX
이 NSPv2 공급자에 대한 NSPv2LookupServiceNextEx 함수에 대한 포인터입니다.
NSPv2LookupServiceEnd
형식: LPNSPV2LOOKUPSERVICEEND
이 NSPv2 공급자에 대한 NSPv2LookupServiceEnd 함수에 대한 포인터입니다.
NSPv2SetServiceEx
형식: LPNSPV2SETSERVICEEX
이 NSPv2 공급자에 대한 NSPv2SetServiceEx 함수에 대한 포인터입니다.
NSPv2ClientSessionRundown
형식: LPNSPV2CLIENTSESSIONRUNDOWN
이 NSPv2 공급자에 대한 NSPv2ClientSessionRundown 함수에 대한 포인터입니다.
설명
NSPV2_ROUTINE 구조는 Windows Vista 이상에서 사용할 수 있는 네임스페이스 서비스 공급자 버전 2(NSPv2) 아키텍처의 일부로 사용됩니다.
Windows Vista 및 Windows Server 2008에서 NSPV2_ROUTINE 구조는 NS_EMAIL 네임스페이스 공급자의 작업에만 사용할 수 있습니다.
WSAAdvertiseProvider 함수는 클라이언트가 찾을 수 있도록 NSPv2 공급자의 instance 보급합니다. WSAAdvertiseProvider 호출자는 공급자가 지원하는 NSPv2 진입점을 사용하여 pNSPv2Routine 매개 변수의 NSPV2_ROUTINE 구조에 대한 포인터를 전달합니다.
다음 함수를 구현하려면 NSPv2 공급자가 필요합니다.
다른 모든 함수는 NSPv2 공급자의 요구 사항에 따라 선택 사항입니다.
함수가 구현되지 않은 경우 WSAEOPNOTSUPP를 반환하는 스텁 함수에서 해당 함수에 대한 호출을 가로채야 합니다. NSPV2_ROUTINE 구조체에서 구현되지 않은 함수에 대한 NSPv2 함수 포인터는 스텁 함수를 가리킵니다.
일반적으로 NSPv2 공급자는 호출 애플리케이션 이외의 프로세스에서 구현됩니다. NSPv2 공급자는 클라이언트 작업의 결과로 활성화되지 않습니다. 애플리케이션을 호스팅하는 각 공급자는 WSAAdvertiseProvider 및 WSAUnadvertiseProvider 함수 를 호출하여 특정 공급자를 사용할 수 있거나 사용할 수 없는 경우를 결정합니다. 클라이언트 활동은 사용 가능한 경우(네임스페이스 공급자가 보급될 때) 공급자에게 연락하려고 시도하기만 합니다.
프로세스는 여러 공급자를 동시에 구현하고 보급할 수 있습니다. Windows 소켓은 올바른 호출로 호출을 디스패치하여 네임스페이스 공급자를 관리합니다. 또한 RPC 인터페이스 세부 정보를 숨기고 프로세스 간 호출을 In-Process 호출로 변환합니다. 따라서 NSPv2 공급자는 NSPv1 공급자가 사용하는 NSP_ROUTINE 구조와 유사한 진입점 함수 테이블을 구현해야 합니다. NSPv2 공급자는 RPC 관련 요구 사항(예: 데이터 마샬링 및 serialization)에 대해 걱정할 필요가 없습니다.
WSAUnadvertiseProvider 함수를 사용하면 클라이언트에서 특정 네임스페이스 공급자를 더 이상 사용할 수 없습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
머리글 | ws2spi.h |