Función CryptSetProviderA (wincrypt.h)
Si se establece el proveedor predeterminado de un usuario actual, ese proveedor predeterminado lo adquiere cualquier llamada de ese usuario a CryptAcquireContext especificando un tipo de proveedor dwProvType , pero no un nombre de CSP.
También hay disponible una versión mejorada de esta función, CryptSetProviderEx.
Sintaxis
BOOL CryptSetProviderA(
[in] LPCSTR pszProvName,
[in] DWORD dwProvType
);
Parámetros
[in] pszProvName
Nombre del nuevo CSP predeterminado. El CSP con nombre debe instalarse en el equipo. Para obtener una lista de proveedores criptográficos disponibles, consulte Nombres de proveedor criptográfico.
[in] dwProvType
Tipo de proveedor del CSP especificado por pszProvName.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es distinto de cero (TRUE).
Si se produce un error en la función, el valor devuelto es cero (FALSE). Para obtener información de error extendida, llame a GetLastError. Algunos códigos de error posibles se enumeran en la tabla siguiente.
Código devuelto | Descripción |
---|---|
|
Uno de los parámetros especifica un identificador que no es válido. |
|
Uno de los parámetros contiene un valor que no es válido. Suele ser un puntero que no es válido. |
|
El sistema operativo se quedó sin memoria durante la operación. |
Los errores también se pueden propagar desde llamadas internas a RegCreateKeyEx y RegSetValueEx.
Comentarios
Las aplicaciones típicas no especifican un nombre de CSP al llamar a CryptAcquireContext; sin embargo, una aplicación tiene la opción de seleccionar un CSP específico. Esto proporciona a un usuario la libertad de seleccionar un CSP con un nivel de seguridad adecuado.
Dado que llamar a CryptSetProvider determina el CSP de un tipo especificado usado por todas las aplicaciones que se ejecutan desde ese punto, esta función no debe llamarse sin el consentimiento de los usuarios.
Nota
El encabezado wincrypt.h define CryptSetProvider como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.
Requisitos
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | wincrypt.h |
Library | Advapi32.lib |
Archivo DLL | Advapi32.dll |