Oharra
Baimena behar duzu orria atzitzeko. Direktorioetan saioa has dezakezu edo haiek alda ditzakezu.
Baimena behar duzu orria atzitzeko. Direktorioak alda ditzakezu.
La función NCryptEnumKeys obtiene los nombres de las claves almacenadas por el proveedor.
Sintaxis
SECURITY_STATUS NCryptEnumKeys(
[in] NCRYPT_PROV_HANDLE hProvider,
[in, optional] LPCWSTR pszScope,
[out] NCryptKeyName **ppKeyName,
[in, out] PVOID *ppEnumState,
[in] DWORD dwFlags
);
Parámetros
[in] hProvider
Identificador del proveedor de almacenamiento de claves para el que se van a enumerar las claves. Este identificador se obtiene con la función NCryptOpenStorageProvider .
[in, optional] pszScope
Este parámetro no se usa actualmente y debe ser NULL.
[out] ppKeyName
Dirección de un puntero a una estructura NCryptKeyName que recibe el nombre de la clave recuperada. Cuando la aplicación haya terminado de usar esta memoria, liberela llamando a la función NCryptFreeBuffer .
[in, out] ppEnumState
Dirección de un puntero VOID que recibe información de estado de enumeración que se usa en llamadas posteriores a esta función. Esta información solo tiene significado para el proveedor de almacenamiento de claves y es opaco para el autor de la llamada. El proveedor de almacenamiento de claves usa esta información para determinar qué elemento se encuentra a continuación en la enumeración. Si la variable a la que apunta este parámetro contiene NULL, la enumeración se inicia desde el principio.
Cuando esta memoria ya no es necesaria, debe liberarse pasando este puntero a la función NCryptFreeBuffer .
[in] dwFlags
Marcas que modifican el comportamiento de la función. Puede ser cero o una combinación de uno o varios de los valores siguientes.
Valor devuelto
Devuelve un código de estado que indica el éxito o error de la función.
Entre los posibles códigos de retorno se incluyen, entre otros, los siguientes.
| Código devuelto | Descripción |
|---|---|
|
La función se realizó correctamente. |
|
El parámetro dwFlags contiene un valor que no es válido. |
|
El parámetro hProvider no es válido. |
|
Uno o más parámetros no son válidos. |
|
Error de asignación de memoria. |
|
Se ha alcanzado el final de la enumeración. |
|
El parámetro dwFlags contiene la marca NCRYPT_SILENT_FLAG , pero la clave que se enumera requiere interacción del usuario. |
Comentarios
Esta función recupera solo un elemento cada vez que se llama. El estado de la enumeración se almacena en la variable a la que apunta el parámetro ppEnumState , por lo que debe conservarse entre las llamadas a esta función. Cuando se haya recuperado la última clave almacenada por el proveedor, esta función devolverá NTE_NO_MORE_ITEMS la próxima vez que se llame. Para iniciar la enumeración, establezca la variable a la que apunta el parámetro ppEnumState en NULL, libere la memoria a la que apunta el parámetro ppKeyName , si no es NULL, y vuelva a llamar a esta función.
Un servicio no debe llamar a esta función desde su función StartService. Si un servicio llama a esta función desde su función StartService, se puede producir un interbloqueo y el servicio puede dejar de responder.
Requisitos
| Requisito | Value |
|---|---|
| Cliente mínimo compatible | Windows Vista [aplicaciones de escritorio | aplicaciones para UWP] |
| Servidor mínimo compatible | Windows Server 2008 [aplicaciones de escritorio | aplicaciones para UWP] |
| Plataforma de destino | Windows |
| Encabezado | ncrypt.h |
| Library | Ncrypt.lib |
| Archivo DLL | Ncrypt.dll |