CERT_SELECT_STRUCT_A struttura (cryptdlg.h)

La struttura CERT_SELECT_STRUCT contiene criteri in base al quale selezionare i certificati presentati in una finestra di dialogo di selezione del certificato. Questa struttura viene usata nella funzione CertSelectCertificate .

Sintassi

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;

Members

dwSize

Dimensione, in byte, della struttura.

hwndParent

Handle nella finestra padre di qualsiasi finestra di dialogo generata da CertSelectCertificate .

hInstance

Handle per il modulo il cui file eseguibile contiene il modello di finestra di dialogo.

pTemplateName

Se il flag di CSS_ENABLETEMPLATE è impostato nel membro dwFlags , impostare pTemplateName su un puntatore a un oggetto memoria globale che contiene il modello usato da DialogBoxIndirectParam per creare la finestra di dialogo. Un modello di finestra di dialogo è costituito da un'intestazione che descrive la finestra di dialogo. L'intestazione è seguita da uno o più blocchi aggiuntivi di dati che descrivono ognuno dei controlli nella finestra di dialogo. Il modello può usare il formato standard o il formato esteso.

Se il flag di CSS_ENABLETEMPLATEHANDLE è impostato in dwFlags, pTemplateName specifica il modello della finestra di dialogo. pTemplateName è il puntatore a una stringa di caratteri con terminazione null che specifica il nome del modello di finestra di dialogo o un valore integer che specifica l'identificatore della risorsa del modello di finestra di dialogo. Se specifica un identificatore di risorsa, la parola ad ordine elevato deve essere zero e la parola a basso ordine deve contenere l'identificatore. Un modo per creare questo valore intero consiste nell'usare la macro MAKEINTRESOURCE .

dwFlags

Questo membro può essere uno o più dei valori seguenti.

Valore Significato
CSS_HIDE_PROPERTIES
Nascondere il pulsante Proprietà .
CSS_ENABLEHOOK
Passare una procedura di hook in pfnHook.
CSS_ALLOWMULTISELECT
Abilitare la selezione multipla dei certificati. Questa opzione non è attualmente supportata e viene ignorata.
CSS_SHOW_HELP
Mostra il pulsante Della Guida .
CSS_ENABLETEMPLATE
Causa la chiamata della funzione CertSelectCertificate alla funzione DialogBoxIndirectParam per creare una finestra di dialogo. Per altre informazioni, vedere pTemplateName.
CSS_ENABLETEMPLATEHANDLE
Consente alla funzione CertSelectCertificate di chiamare la funzione DialogBoxParam per creare una finestra di dialogo. Per altre informazioni, vedere pTemplateName.

szTitle

Puntatore a una stringa contenente il testo per il titolo della finestra di dialogo.

cCertStore

Numero di elementi nella matrice arrayCertStore .

arrayCertStore

Puntatore alla matrice di archivi certificati che la finestra di dialogo enumera e visualizza i certificati da. Il membro cCertStore contiene il numero di elementi in questa matrice.

szPurposeOid

Puntatore a una rappresentazione stringa di un identificatore di oggetto (OID) per un utilizzo avanzato della chiave (EKU). Se viene fornito un OID, verranno visualizzati solo i certificati che includono questo EKU.

cCertContext

Numero di elementi nella matrice arrayCertContext . Dopo che la funzione CertSelectCertificate restituisce, questo membro contiene il numero di certificati selezionati dall'utente. Attualmente, è possibile selezionare un solo certificato dall'utente.

arrayCertContext

Puntatore a una matrice di strutture CERT_CONTEXT . Il membro cCertContext specifica il numero di elementi in questa matrice. Questa matrice deve contenere almeno un elemento.

I certificati rappresentati da queste strutture vengono selezionati quando viene visualizzata la finestra di dialogo visualizzata dalla funzione CertSelectCertificate . Attualmente viene usato solo il primo certificato in questa matrice. Il primo certificato in questa matrice verrà rilasciato con la funzione CertFreeCertificateContext se la funzione CertSelectCertificate Ha esito positivo. Se il primo elemento in questa matrice è NULL, non vengono inizialmente selezionati certificati nella finestra di dialogo.

Dopo che la funzione CertSelectCertificate restituisce, questa matrice contiene i certificati selezionati dall'utente. Attualmente, è possibile selezionare un solo certificato dall'utente.

lCustData

Puntatore a una matrice di valori di byte che contengono dati personalizzati passati alla routine di filtro a cui fa riferimento pfnFilter. Questi dati personalizzati non vengono usati dalla funzione CertSelectCertificate .

pfnHook

Puntatore della funzione PFNCMHOOKPROC alla funzione di callback di Hook. Questa funzione viene chiamata prima che i messaggi vengano elaborati dalla finestra di dialogo. Per altre informazioni, vedere Hook.

pfnFilter

Puntatore della funzione PFNCMFILTERPROC alla funzione di callback del filtro. Viene chiamato per determinare quali certificati verranno visualizzati dalla finestra di dialogo.

szHelpFileName

Puntatore a una stringa con terminazione null contenente il percorso completo del file della Guida.

dwHelpId

Identificatore di contesto per l'argomento. Per ulteriori informazioni, vedere
WinHelp.

hprov

Handle al provider di servizi di crittografia da usare per la verifica del certificato.

Commenti

Nota

L'intestazione cryptdlg.h definisce CERT_SELECT_STRUCT come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Intestazione cryptdlg.h

Vedi anche

CertSelectCertificate