estructura NSPV2_ROUTINE (ws2spi.h)

La estructura NSPV2_ROUTINE contiene información sobre las funciones implementadas por un proveedor de servicios de espacio de nombres versión 2 (NSPv2).

Nota La estructura de archivos de encabezado Ws2spi.h contiene prototipos completos para todos los punteros de función NSPV2.

 

Sintaxis

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;

Miembros

cbSize

Tipo: DWORD

Tamaño, en bytes, de la estructura.

dwMajorVersion

Tipo: DWORD

La versión principal de la especificación del proveedor de servicios compatible con este proveedor.

dwMinorVersion

Tipo: DWORD

La versión secundaria de la especificación del proveedor de servicios compatible con este proveedor.

NSPv2Startup

Tipo: ** LPNSPV2STARTUP**

Puntero a la función NSPv2Startup para este proveedor NSPv2.

NSPv2Cleanup

Tipo: LPNSPV2CLEANUP

Puntero a la función NSPv2Cleanup para este proveedor NSPv2.

NSPv2LookupServiceBegin

Tipo: LPNSPV2LOOKUPSERVICEBEGIN

Puntero a la función NSPv2LookupServiceBegin para este proveedor NSPv2.

NSPv2LookupServiceNextEx

Tipo: LPNSPV2LOOKUPSERVICENEXTEX

Puntero a la función NSPv2LookupServiceNextEx para este proveedor NSPv2.

NSPv2LookupServiceEnd

Tipo: LPNSPV2LOOKUPSERVICEEND

Puntero a la función NSPv2LookupServiceEnd para este proveedor NSPv2.

NSPv2SetServiceEx

Tipo: LPNSPV2SETSERVICEEX

Puntero a la función NSPv2SetServiceEx para este proveedor NSPv2.

NSPv2ClientSessionRundown

Tipo: LPNSPV2CLIENTSESSIONRUNDOWN

Puntero a la función NSPv2ClientSessionRundown para este proveedor NSPv2.

Comentarios

La estructura de NSPV2_ROUTINE se usa como parte de la arquitectura del proveedor de servicios de espacio de nombres versión 2 (NSPv2) disponible en Windows Vista y versiones posteriores.

En Windows Vista y Windows Server 2008, la estructura NSPV2_ROUTINE solo se puede usar para las operaciones en proveedores de espacio de nombres NS_EMAIL.

La función WSAAdvertiseProvider anuncia una instancia de un proveedor NSPv2 para que los clientes encuentren. El llamador WSAAdvertiseProvider pasa un puntero a una estructura de NSPV2_ROUTINE en el parámetro pNSPv2Routine con los puntos de entrada NSPv2 admitidos por el proveedor.

Se requiere un proveedor NSPv2 para implementar las siguientes funciones:

NSPv2LookupServiceBegin

- NSPv2LookupServiceNextEx

- NSPv2LookupServiceEnd

Todas las demás funciones son opcionales, dependiendo de los requisitos del proveedor NSPv2.

Si no se implementa una función, las llamadas a esa función se deben interceptar mediante una función de código auxiliar que devuelve WSAEOPNOTSUPP. El puntero de función NSPv2 a la función no implementada en la estructura NSPV2_ROUTINE debe apuntar a la función de código auxiliar.

En general, los proveedores NSPv2 se implementan en procesos distintos de las aplicaciones que llaman. Los proveedores NSPv2 no se activan como resultado de la actividad del cliente. Cada aplicación de hospedaje de proveedor decide cuándo hacer que un proveedor específico esté disponible o no disponible mediante una llamada a las funciones WSAAdvertiseProvider y WSAUnadvertiseProvider . La actividad del cliente solo da como resultado intentos de ponerse en contacto con el proveedor, cuando está disponible (cuando se anuncia el proveedor de espacios de nombres).

Un proceso puede implementar y anunciar varios proveedores al mismo tiempo. Windows Sockets administrará los proveedores de espacios de nombres enviando llamadas a la correcta. También ocultará los detalles de la interfaz RPC y traducirá las llamadas entre procesos en llamadas en proceso. Por lo tanto, el proveedor NSPv2 solo tiene que implementar una tabla de funciones de punto de entrada similares a la estructura de NSP_ROUTINE usada por un proveedor NSPv1. Un proveedor NSPv2 no tiene que preocuparse por los requisitos específicos de RPC (serialización y serialización de datos, por ejemplo).

La función WSAUnadvertiseProvider hace que un proveedor de espacios de nombres específico ya no esté disponible para los clientes.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Encabezado ws2spi.h

Consulte también

NSP_ROUTINE

NSPv2Cleanup

NSPv2ClientSessionRundown

NSPv2LookupServiceBegin

NSPv2LookupServiceEnd

NSPv2LookupServiceNextEx

NSPv2SetServiceEx

NSPv2Startup

WSAAdvertiseProvider

WSAProviderCompleteAsyncCall

WSAQUERYSET2

WSAUnadvertiseProvider