Compartilhar via


Função CertEnumSystemStore (wincrypt.h)

A função CertEnumSystemStore recupera os repositórios do sistema disponíveis. A função chama a função de retorno de chamada fornecida para cada repositório do sistema encontrado.

Sintaxe

BOOL CertEnumSystemStore(
  [in]           DWORD                      dwFlags,
  [in, optional] void                       *pvSystemStoreLocationPara,
  [in]           void                       *pvArg,
  [in]           PFN_CERT_ENUM_SYSTEM_STORE pfnEnum
);

Parâmetros

[in] dwFlags

Especifica o local do repositório do sistema. Esse parâmetro pode ser um dos seguintes sinalizadores:

  • CERT_SYSTEM_STORE_CURRENT_USER
  • CERT_SYSTEM_STORE_CURRENT_SERVICE
  • CERT_SYSTEM_STORE_LOCAL_MACHINE
  • CERT_SYSTEM_STORE_LOCAL_MACHINE_GROUP_POLICY
  • CERT_SYSTEM_STORE_CURRENT_USER_GROUP_POLICY
  • CERT_SYSTEM_STORE_SERVICES
  • CERT_SYSTEM_STORE_USERS
  • CERT_SYSTEM_STORE_LOCAL_MACHINE_ENTERPRISE
Além disso, o CERT_SYSTEM_STORE_RELOCATE_FLAG pode ser combinado, usando uma operação OR bit a bit, com qualquer um dos sinalizadores de localização de palavras altas.

[in, optional] pvSystemStoreLocationPara

Se CERT_SYSTEM_STORE_RELOCATE_FLAG estiver definido no parâmetro dwFlags , pvSystemStoreLocationPara apontará para uma estrutura CERT_SYSTEM_STORE_RELOCATE_PARA que indica o nome e o local do repositório do sistema. Caso contrário, pvSystemStoreLocationPara é um ponteiro para uma cadeia de caracteres Unicode que nomeia o repositório do sistema.

Por CERT_SYSTEM_STORE_LOCAL_MACHINE ou CERT_SYSTEM_STORE_LOCAL_MACHINE_GROUP_POLICY, pvSystemStoreLocationPara pode opcionalmente ser definido como um nome de computador Unicode para enumerar repositórios de computadores locais em um computador remoto, por exemplo , "\\computer_name" ou "computer_name". As barras invertidas à esquerda (\) são opcionais no computer_name.

Para CERT_SYSTEM_STORE_SERVICES ou CERT_SYSTEM_STORE_USERS, se pvSystemStoreLocationPara for NULL, a função enumerará os nomes de serviço/usuário e os repositórios para cada nome de serviço/usuário. Caso contrário, pvSystemStoreLocationPara é uma cadeia de caracteres Unicode que contém um nome de computador remoto e, se disponível, um nome de serviço/usuário, por exemplo, "service_name", "\\computer_name" ou "computer_name".

Se apenas o computer_name for especificado, ele deverá ter as barras invertidas à esquerda (\) ou uma barra invertida à direita (\). Caso contrário, ele será interpretado como o service_name ou user_name.

[in] pvArg

Um ponteiro para um nulo que permite que o aplicativo declare, defina e inicialize uma estrutura para manter todas as informações a serem passadas para a função de enumeração de retorno de chamada.

[in] pfnEnum

Um ponteiro para a função de retorno de chamada usada para mostrar os detalhes de cada repositório do sistema. Essa função de retorno de chamada determina o conteúdo e o formato para a apresentação de informações em cada repositório do sistema. O aplicativo deve fornecer a função de retorno de chamada CertEnumSystemStoreCallback .

Valor retornado

Se a função for bem-sucedida, a função retornará TRUE.

Se a função falhar, ela retornará FALSE.

Comentários

Para usar CertEnumSystemStore, o aplicativo deve declarar e definir a estrutura ENUM_ARG e a função de retorno de chamada CertEnumSystemStoreCallback .

Exemplos

Para obter um exemplo que usa essa função, consulte Exemplo de programa C: listando o sistema e repositórios físicos.

Requisitos

   
Cliente mínimo com suporte Windows XP [aplicativos da área de trabalho | aplicativos UWP]
Servidor mínimo com suporte Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho wincrypt.h
Biblioteca Crypt32.lib
DLL Crypt32.dll

Confira também

CERT_SYSTEM_STORE_RELOCATE_PARA

CertEnumPhysicalStore

CertEnumSystemStoreLocation

CertRegisterPhysicalStore

CertRegisterSystemStore

CertUnregisterPhysicalStore

CertUnregisterSystemStore

Funções de repositório de certificados