Funzione CertCreateContext (wincrypt.h)
La funzione CertCreateContext crea il contesto specificato dai byte codificati. Il contesto creato non include alcuna proprietà estesa.
Sintassi
const void * CertCreateContext(
[in] DWORD dwContextType,
[in] DWORD dwEncodingType,
[in] const BYTE *pbEncoded,
[in] DWORD cbEncoded,
[in] DWORD dwFlags,
[in, optional] PCERT_CREATE_CONTEXT_PARA pCreatePara
);
Parametri
[in] dwContextType
Specifica i contesti che possono essere creati. Ad esempio, per creare un contestodi certificato, impostare dwContextType su CERT_STORE_CERTIFICATE_CONTEXT.
I flag di tipo di contesto attualmente definiti sono visualizzati nella tabella seguente.
Valore | Significato |
---|---|
|
Contesto del certificato. |
|
Contesto CRL. |
|
Contesto CTL. |
[in] dwEncodingType
Specifica il tipo di codifica usato. Attualmente vengono usati solo X509_ASN_ENCODING e PKCS_7_ASN_ENCODING; Tuttavia, è possibile aggiungere altri tipi di codifica in futuro. Per entrambi i tipi di codifica correnti, usare:
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING.
[in] pbEncoded
Puntatore a un buffer che contiene il contenuto del contesto codificato esistente da copiare.
[in] cbEncoded
Dimensioni, in byte, del buffer pbEncoded .
[in] dwFlags
I valori del flag seguenti sono definiti e possono essere combinati usando un'operazione BIT-OR .
Valore | Significato |
---|---|
|
Il contesto creato punta direttamente al contenuto a cui punta pbEncoded anziché una copia allocata. |
|
La funzione crea un contesto con voci ordinate. Attualmente, questo flag si applica solo a un contesto CTL.
Per le dll cCTLEntrydella struttura CTL_INFO restituita è sempre zero. CertFindSubjectInSortedCTL e CertEnumSubjectInSortedCTL devono essere chiamati per trovare o enumerare le voci CTL. |
|
Per impostazione predefinita, quando viene creato un contesto CTL, viene creato un handle HCRYTPMSG per il relativo messaggio SignedData . Questo flag può essere impostato per migliorare le prestazioni non creando questo handle. Questo flag può essere usato solo quando dwContextType è CERT_STORE_CTL_CONTEXT. |
|
Per impostazione predefinita, quando viene creato un contesto CTL, le relative voci vengono decodificate. Quando questo flag viene impostato, le voci non vengono decodificate e le prestazioni vengono migliorate. Questo flag può essere usato solo quando dwContextType è CERT_STORE_CTL_CONTEXT. |
[in, optional] pCreatePara
Puntatore a una struttura CERT_CREATE_CONTEXT_PARA .
Se pCreatePara e il relativo membro pfnFree sono entrambi non NULL, il membro pfnFree viene usato per liberare la memoria specificata dal membro pvFree. Se il membro pvFree è NULL, il membro pfnFree viene usato per liberare il puntatore pbEncoded .
Se pCreatePara o il relativo membro pfnFree è NULL, non viene eseguito alcun tentativo di liberare pbEncoded.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è un puntatore al contesto appena creato. Il membro pvFree di pCreatePara deve essere chiamato per liberare il contesto creato.
Se la funzione ha esito negativo, il valore restituito è NULL. Per informazioni sull'errore estese, chiamare GetLastError.
Se GetLastError restituisce ERROR_CANCELLED, significa che la funzione di callback PFN_CERT_CREATE_CONTEXT_SORT_FUNC restituita FALSE per arrestare l'ordinamento.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [app desktop | App UWP] |
Server minimo supportato | Windows Server 2003 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | wincrypt.h |
Libreria | Crypt32.lib |
DLL | Crypt32.dll |
Vedi anche
Funzioni di manutenzione dell'archivio certificati e certificato