Estructura VTableProvStruc

La estructura VTableProvStruc contiene punteros a funciones de devolución de llamada que pueden usar las funciones del proveedor de servicios criptográficos (CSP).

Sintaxis

typedef struct VTableProvStruc {
  DWORD   Version;
  FARPROC FuncVerifyImage;
  FARPROC FuncReturnhWnd;
  DWORD   dwProvType;
  BYTE    *pbContextInfo;
  DWORD   cbContextInfo;
  LPSTR   pszProvName;
} VTableProvStruc, *PVTableProvStruc;

Miembros

Versión

Valor DWORD que indica la versión de la estructura. Se usan tres versiones de esta estructura. Las versiones son el número 1, 2 y 3 y determinan qué miembros de la estructura son válidos. Los miembros de la versión 1 son válidos en todos los sistemas que admiten esta estructura.

Se trata de un miembro de la versión 1.

FuncVerifyImage

Dirección de una función de devolución de llamada FuncVerifyImage que usa el CSP para comprobar la firma de los archivos DLL que cargará el CSP. Todos los archivos DLL auxiliares en los que un CSP realiza llamadas de función deben iniciar sesión de la misma manera (y con la misma clave) que el archivo DLL de CSP principal. Para garantizar esta firma, los archivos DLL auxiliares se deben cargar dinámicamente mediante la función LoadLibrary . Pero antes de cargar el archivo DLL, se debe comprobar la firma del archivo DLL. El CSP realiza esta comprobación mediante una llamada a la función FuncVerifyImage , como se muestra en el ejemplo siguiente.

Este puntero de función se puede almacenar y usar hasta que se libere el contexto de CSP.

Se trata de un miembro de la versión 1.

FuncReturnhWnd

Dirección de una función de devolución de llamada FuncReturnhWnd que devuelve el identificador de ventana que el CSP debe usar como elemento primario o propietario de cualquier interfaz de usuario que se muestre. Los CSP que no se comunican directamente con el usuario y los CSP que usan hardware dedicado para este propósito pueden omitir esta entrada. Este identificador de ventana es cero de forma predeterminada, pero una aplicación puede establecerlo en un valor diferente mediante la función CryptSetProvParam para establecer la propiedad PP_CLIENT_HWND .

Este puntero de función se puede almacenar y usar hasta que se libere el contexto de CSP.

Se trata de un miembro de la versión 1.

dwProvType

Valor DWORD que especifica el tipo de proveedor que se va a adquirir. Los siguientes tipos de proveedor están predefinidos y se describen en detalle en Interoperabilidad de CSP:

  • PROV_RSA_FULL
  • PROV_RSA_SIG
  • PROV_DSS
  • PROV_FORTEZZA
  • PROV_MS_EXCHANGE

Se trata de un miembro de la versión 2.

pbContextInfo

Puntero a una matriz de información de contexto. Los miembros pbContextInfo y cbContextInfo determinan juntos el conjunto de información utilizado cuando se llama a una función CPSetProvParam con PP_CONTEXT_INFO establecido.

Se trata de un miembro de la versión 2.

cbContextInfo

Valor DWORD que indica el número de elementos de la matriz pbContextInfo .

Se trata de un miembro de la versión 2.

pszProvName

Cadena que contiene el nombre del proveedor.

Se trata de un miembro de la versión 3.

Observaciones

Los punteros de la estructura VTableProvStruc solo están disponibles dentro de la función CPAcquireContext . Si los miembros de la estructura son necesarios después de completar una llamada a CPAcquireContext , el CSP debe realizar copias de los elementos de estructura necesarios. Los punteros de función de esta estructura se pueden almacenar y usar hasta que se libere el contexto de CSP.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server 2003 [solo aplicaciones de escritorio]
Encabezado
Cspdk.h
Nombres Unicode y ANSI
VTableProvStrucW (Unicode)