estrutura CRYPTUI_VIEWCERTIFICATE_STRUCTW (cryptuiapi.h)

A estrutura CRYPTUI_VIEWCERTIFICATE_STRUCT contém informações sobre um certificado a ser exibido. Essa estrutura é usada na função CryptUIDlgViewCertificate .

Sintaxe

typedef struct tagCRYPTUI_VIEWCERTIFICATE_STRUCTW {
  DWORD             dwSize;
  HWND              hwndParent;
  DWORD             dwFlags;
  LPCWSTR           szTitle;
  PCCERT_CONTEXT    pCertContext;
  LPCSTR            *rgszPurposes;
  DWORD             cPurposes;
  union {
    CRYPT_PROVIDER_DATA const *pCryptProviderData;
    HANDLE                    hWVTStateData;
  };
  BOOL              fpCryptProviderDataTrustedUsage;
  DWORD             idxSigner;
  DWORD             idxCert;
  BOOL              fCounterSigner;
  DWORD             idxCounterSigner;
  DWORD             cStores;
  HCERTSTORE        *rghStores;
  DWORD             cPropSheetPages;
  LPCPROPSHEETPAGEW rgPropSheetPages;
  DWORD             nStartPage;
} CRYPTUI_VIEWCERTIFICATE_STRUCTW, *PCRYPTUI_VIEWCERTIFICATE_STRUCTW;

Membros

dwSize

O tamanho, em bytes, da estrutura CRYPTUI_VIEWCERTIFICATE_STRUCT .

hwndParent

Um identificador para a janela que é o pai da caixa de diálogo produzida por CryptUIDlgViewCertificate.

dwFlags

Esse membro pode ser um ou mais dos valores a seguir.

Valor Significado
CRYPTUI_HIDE_HIERARCHYPAGE
A página Caminho de Certificação está desabilitada.
CRYPTUI_HIDE_DETAILPAGE
A página Detalhes está desabilitada.
CRYPTUI_DISABLE_EDITPROPERTIES
O usuário não tem permissão para alterar as propriedades.
CRYPTUI_ENABLE_EDITPROPERTIES
O usuário tem permissão para alterar as propriedades.
CRYPTUI_DISABLE_ADDTOSTORE
O botão Instalar está desabilitado.
CRYPTUI_ENABLE_ADDTOSTORE
O botão Instalar está habilitado.
CRYPTUI_ACCEPT_DECLINE_STYLE
As páginas ou botões que permitem ao usuário aceitar ou recusar qualquer decisão estão desabilitados.
CRYPTUI_IGNORE_UNTRUSTED_ROOT
Um erro raiz não confiável é ignorado.
CRYPTUI_DONT_OPEN_STORES
Os repositórios confiáveis conhecidos não serão usados para criar a cadeia.
CRYPTUI_ONLY_OPEN_ROOT_STORE
Um repositório raiz confiável conhecido não será usado para criar a cadeia.
CRYPTUI_WARN_UNTRUSTED_ROOT
Use somente ao exibir certificados em computadores remotos. Se esse sinalizador for usado, o primeiro elemento de rghStores deverá ser o identificador do repositório raiz no computador remoto.
CRYPTUI_ENABLE_REVOCATION_CHECKING
Habilite a verificação de revogação com o comportamento padrão. O comportamento padrão é habilitar a verificação de revogação de toda a cadeia de certificados, exceto o certificado raiz. Válido somente se nem o membro da união pCryptProviderData nem o membro da união hWVTStateData forem passados.
CRYPTUI_WARN_REMOTE_TRUST
Ao criar uma cadeia de certificados para um computador remoto, avise que a cadeia pode não ser confiável no computador remoto.
CRYPTUI_DISABLE_EXPORT
Se esse sinalizador estiver definido, o botão Copiar para arquivo será desabilitado na página Detalhes .
CRYPTUI_ENABLE_REVOCATION_CHECK_END_CERT
Habilite a verificação de revogação somente no certificado folha na cadeia de certificados. Válido somente se nem o membro da união pCryptProviderData nem o membro da união hWVTStateData forem passados.
CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN
Habilite a verificação de revogação em cada certificado na cadeia de certificados. Válido somente se nem o membro da união pCryptProviderData nem o membro da união hWVTStateData forem passados.

Nota Como os certificados raiz raramente contêm informações que permitem a verificação de revogação, espera-se que o uso dessa opção geralmente resulte em falha da função CryptUIDlgViewCertificate . A opção recomendada é usar CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT.

CRYPTUI_ENABLE_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT
Habilite a verificação de revogação em cada certificado na cadeia de certificados, exceto para o certificado raiz. Essa é a opção recomendada a ser usada para verificação de revogação de certificado. Válido somente se nem o membro da união pCryptProviderData nem o membro da união hWVTStateData forem passados.

Nota Esse sinalizador é equivalente a CRYPTUI_ENABLE_REVOCATION_CHECKING.

CRYPTUI_DISABLE_HTMLLINK
Desabilite o botão Ajuda HTML (?) na caixa de diálogo Certificado .
CRYPTUI_DISABLE_ISSUERSTATEMENT
Desabilite o botão Instrução emissor na guia Geral da caixa de diálogo Certificado .
CRYPTUI_CACHE_ONLY_URL_RETRIEVAL
Desabilite a verificação de revogação online. Defina esse sinalizador para garantir que a função CryptUIDlgViewCertificate use o cache local para recuperar o certificado e não tente recuperar o certificado da rede.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Não há suporte para esse sinalizador.

szTitle

Um ponteiro para uma cadeia de caracteres terminada em nulo que contém o título da janela.

pCertContext

Um ponteiro para a estrutura CERT_CONTEXT que contém o contexto de certificado a ser exibido.

rgszPurposes

Uma matriz de ponteiros para cadeias de caracteres terminadas em nulo que contêm as finalidades para as quais esse certificado será validado.

cPurposes

O número de finalidades na matriz rgszPurposes .

pCryptProviderData

Se a função WinVerifyTrust já tiver sido chamada para o certificado e a função WTHelperProvDataFromStateData também tiver sido chamada, passe um ponteiro para a estrutura de estado que foi adquirida da chamada para WTHelperProvDataFromStateData. Se pCryptProviderData estiver definido, fpCryptProviderDataTrustedUsage, idxSigner, idxCert e fCounterSignature também deverão ser definidos.

hWVTStateData

Se WinVerifyTrust já tiver sido chamado para o certificado e WTHelperProvDataFromStateData não tiver sido chamado, passe o membro hWVTStateData da estrutura WINTRUST_DATA . Se hWVTStateData estiver definido, fpCryptProviderDataTrustedUsage, idxSigner, idxCert e fCounterSignature também deverão ser definidos.

fpCryptProviderDataTrustedUsage

Se WinVerifyTrust foi chamado, esse é o resultado de se o certificado era confiável.

idxSigner

O índice do signatário a ser exibido.

idxCert

O índice do certificado que está sendo exibido dentro da cadeia de signatários. O contexto de certificado desse certificado deve corresponder a pCertContext.

fCounterSigner

TRUE se uma contra-atribuição estiver sendo exibida. Se for TRUE, idxCounterSigner deverá ser válido.

idxCounterSigner

O índice do contra-atribuídor a ser exibido.

cStores

O número de outros repositórios na matriz rghStores de repositórios de certificados a serem pesquisados ao compilar e validar a cadeia de certificados.

rghStores

Uma matriz de HCERTSTORE manipula outros repositórios de certificados para pesquisar ao compilar e validar a cadeia de certificados.

cPropSheetPages

O número de páginas de propriedades a serem adicionadas à caixa de diálogo.

rgPropSheetPages

Uma matriz de páginas de propriedades a serem adicionadas à caixa de diálogo. Cada página nessa matriz não receberá o lParam na estrutura PROPSHEETPAGE como o lParam na mensagem WM_INITDIALOG . Em vez disso, ele receberá um ponteiro para uma estrutura CRYPTUI_INITDIALOG_STRUCT . Ele contém o lParam em PROPSHEETPAGE e o ponteiro para o CERT_CONTEXT para o qual a página está sendo exibida.

nStartPage

O índice da página inicial que será exibida. Se o bit mais alto (0x8000) for definido, o índice será considerado para indexar rgPropSheetPages (depois que o bit mais alto tiver sido removido, por exemplo, 0x8000 indicará a primeira página em rgPropSheetPages). Se o bit mais alto for zero, nStartPage será o índice inicial das páginas de propriedades da caixa de diálogo de certificado padrão.

Comentários

Observação

O cabeçalho cryptuiapi.h define CRYPTUI_VIEWCERTIFICATE_STRUCT como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho cryptuiapi.h

Confira também

CryptUIDlgViewCertificate