Share via


estrutura CERT_SELECT_STRUCT_W (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 tagCSSW {
  DWORD           dwSize;
  HWND            hwndParent;
  HINSTANCE       hInstance;
  LPCWSTR         pTemplateName;
  DWORD           dwFlags;
  LPCWSTR         szTitle;
  DWORD           cCertStore;
  HCERTSTORE      *arrayCertStore;
  LPCSTR          szPurposeOid;
  DWORD           cCertContext;
  PCCERT_CONTEXT  *arrayCertContext;
  LPARAM          lCustData;
  PFNCMHOOKPROC   pfnHook;
  PFNCMFILTERPROC pfnFilter;
  LPCWSTR         szHelpFileName;
  DWORD           dwHelpId;
  HCRYPTPROV      hprov;
} CERT_SELECT_STRUCT_W, *PCERT_SELECT_STRUCT_W;

Membros

dwSize

O tamanho, em bytes, dessa estrutura.

hwndParent

Um identificador para a janela pai de todas as caixas de diálogo geradas pelo 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 CSS_ENABLETEMPLATE for 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 de dados adicionais 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 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 o especificar um identificador de recurso, sua palavra de alta ordem deverá ser zero e sua palavra de baixa ordem 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 .
CSS_ENABLEHOOK
Passe um procedimento de gancho no 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 Ajuda .
CSS_ENABLETEMPLATE
Faça com que a 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 certificado armazena que a caixa de diálogo enumera e exibe os certificados de . O membro cCertStore contém o número de elementos nesta matriz.

szPurposeOid

Um ponteiro para uma representação de cadeia de caracteres de um OID (identificador de objeto) para um EKU (uso avançado 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 de 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 nesta 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 Ganchos.

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 Provedor de Serviços Criptográficos (CSP) a ser usado para verificação de certificado.

Comentários

Observação

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 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 cryptdlg.h

Confira também

CertSelectCertificate