Compartilhar via


estrutura CERT_SELECT_STRUCT_A (cryptdlg.h)

A estrutura CERT_SELECT_STRUCT contém critérios sobre os quais selecionar certificados apresentados em uma caixa de diálogo de seleção de certificado. Essa estrutura é usada na função CertSelectCertificate .

Sintaxe

typedef struct tagCSSA {
  DWORD           dwSize;
  HWND            hwndParent;
  HINSTANCE       hInstance;
  LPCSTR          pTemplateName;
  DWORD           dwFlags;
  LPCSTR          szTitle;
  DWORD           cCertStore;
  HCERTSTORE      *arrayCertStore;
  LPCSTR          szPurposeOid;
  DWORD           cCertContext;
  PCCERT_CONTEXT  *arrayCertContext;
  LPARAM          lCustData;
  PFNCMHOOKPROC   pfnHook;
  PFNCMFILTERPROC pfnFilter;
  LPCSTR          szHelpFileName;
  DWORD           dwHelpId;
  HCRYPTPROV      hprov;
} CERT_SELECT_STRUCT_A, *PCERT_SELECT_STRUCT_A;

Membros

dwSize

O tamanho, em bytes, dessa estrutura.

hwndParent

Um identificador para a janela pai de todas as caixas de diálogo que gera o CertSelectCertificate.

hInstance

Um identificador para o módulo cujo arquivo executável contém o modelo da caixa de diálogo.

pTemplateName

Se o sinalizador de CSS_ENABLETEMPLATE estiver definido no membro dwFlags, defina pTemplateName como um ponteiro para um objeto de memória global que contém o modelo que DialogBoxIndirectParam usa para criar a caixa de diálogo. Um modelo de caixa de diálogo consiste em um cabeçalho que descreve a caixa de diálogo. O cabeçalho é seguido por um ou mais blocos adicionais de dados que descrevem cada um dos controles na caixa de diálogo. O modelo pode usar o formato padrão ou o formato estendido.

Se o sinalizador de CSS_ENABLETEMPLATEHANDLE estiver definido em dwFlags, pTemplateName especificar o modelo da caixa de diálogo. pTemplateName é o ponteiro para uma cadeia de caracteres terminada em nulo que especifica o nome do modelo da caixa de diálogo ou um valor inteiro que especifica o identificador de recurso do modelo da caixa de diálogo. Se especificar um identificador de recurso, sua palavra de alta ordem deverá ser zero e sua palavra de ordem baixa deverá conter o identificador. Uma maneira de criar esse valor inteiro é usar a macro MAKEINTRESOURCE.

dwFlags

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

Valor Significado
CSS_HIDE_PROPERTIES
Oculte o botão Propriedades do .
CSS_ENABLEHOOK
Passe um procedimento de gancho em pfnHook.
CSS_ALLOWMULTISELECT
Habilite a seleção múltipla de certificados. No momento, essa opção não tem suporte e é ignorada.
CSS_SHOW_HELP
Mostrar o botão da Ajuda .
CSS_ENABLETEMPLATE
Faça com que função CertSelectCertificate chame a função DialogBoxIndirectParam para criar uma caixa de diálogo. Para obter mais informações, consulte pTemplateName.
CSS_ENABLETEMPLATEHANDLE
Faça com que a função CertSelectCertificate chame a função dialogBoxParam para criar uma caixa de diálogo. Para obter mais informações, consulte pTemplateName.

szTitle

Um ponteiro para uma cadeia de caracteres que contém o texto do título da caixa de diálogo.

cCertStore

O número de elementos na matriz ArrayCertStore.

arrayCertStore

Um ponteiro para a matriz de repositórios de certificados dos quais a caixa de diálogo enumera e exibe os certificados. O membro do cCertStore contém o número de elementos nessa matriz.

szPurposeOid

Um ponteiro para uma representação de cadeia de caracteres de um OID (identificador de objeto) para um EKU (uso aprimorado de chave). Se uma OID for fornecida, somente os certificados que incluem esse EKU serão exibidos.

cCertContext

O número de elementos na matriz ArrayCertContext. Depois que a função CertSelectCertificate retorna, esse membro contém o número de certificados que foram selecionados pelo usuário. Atualmente, apenas um certificado pode ser selecionado pelo usuário.

arrayCertContext

Um ponteiro para uma matriz de estruturas CERT_CONTEXT. O membro cCertContext especifica o número de elementos nessa matriz. Essa matriz deve conter pelo menos um elemento.

Os certificados representados por essas estruturas são selecionados quando a caixa de diálogo exibida pela função CertSelectCertificate é exibida inicialmente. Atualmente, somente o primeiro certificado nessa matriz é usado. O primeiro certificado nessa matriz será lançado com a função CertFreeCertificateContext se a função CertSelectCertificate for bem-sucedida. Se o primeiro elemento nessa matriz for NULL, nenhum certificado será selecionado inicialmente na caixa de diálogo.

Depois que a função CertSelectCertificate retorna, essa matriz contém os certificados que foram selecionados pelo usuário. Atualmente, apenas um certificado pode ser selecionado pelo usuário.

lCustData

Um ponteiro para uma matriz de valores de bytes que contêm dados personalizados que são passados para o procedimento de filtro referenciado por pfnFilter. Esses dados personalizados não são usados pela função CertSelectCertificate.

pfnHook

Um ponteiro de função PFNCMHOOKPROC para a função de retorno de chamada Hook. Essa função é chamada antes que as mensagens sejam processadas pela caixa de diálogo. Para obter mais informações, consulte Hooks.

pfnFilter

Um ponteiro de função PFNCMFILTERPROC para a função de retorno de chamada de filtro. Isso é chamado para determinar quais certificados serão exibidos pela caixa de diálogo.

szHelpFileName

Um ponteiro para uma cadeia de caracteres terminada em nulo que contém o caminho completo para o arquivo de Ajuda.

dwHelpId

O identificador de contexto para o tópico. Para obter mais informações, consulte
WinHelp.

hprov

Um identificador para o CSP ( Provedor de Serviços Criptográficos) a ser usado para verificação de certificado.

Observações

Nota

O cabeçalho cryptdlg.h define CERT_SELECT_STRUCT como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows XP [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows Server 2003 [somente aplicativos da área de trabalho]
cabeçalho cryptdlg.h

Consulte também

CertSelectCertificate