Metodo ICertProperties::InitializeFromCertificate (certenroll.h)

Il metodo InitializeFromCertificate inizializza la raccolta dalle proprietà contenute in un certificato.

Sintassi

HRESULT InitializeFromCertificate(
  [in] VARIANT_BOOL MachineContext,
  [in] EncodingType Encoding,
  [in] BSTR         strCertificate
);

Parametri

[in] MachineContext

Variabile VARIANT_BOOL che identifica il contesto dell'archivio certificati. Specificare VARIANT_TRUE per il computer e VARIANT_FALSE per l'utente.

[in] Encoding

Valore di enumerazione EncodingType che specifica il tipo di codifica Unicode applicato al certificato contenuto nel parametro strCertificate .

[in] strCertificate

Variabile BSTR che contiene il certificato con codifica DER.

A partire da Windows 7 e Windows Server 2008 R2, è possibile specificare un numero di identificazione personale o un numero di serie del certificato anziché un certificato codificato. In questo modo, la funzione cerca il certificato corrispondente negli archivi locali appropriati. Tenere presente quanto segue:

  • BSTR deve essere un numero pari di cifre esadecimali.
  • Gli spazi vuoti tra coppie esadecimali vengono ignorati.
  • Il parametro Encoding deve essere impostato su XCN_CRYPT_STRING_HEXRAW.
  • Il parametro MachineContext determina se l'utente o il computer archivia o entrambe le ricerche.
  • Se è necessaria una chiave privata, vengono cercati solo gli archivi personali e delle richieste.
  • Se non è necessaria una chiave privata, vengono cercati anche gli archivi ca radice e intermedi.

Valore restituito

Se la funzione ha esito positivo, la funzione restituisce S_OK.

Se la funzione ha esito negativo, restituisce un valore HRESULT che indica l'errore. I valori possibili includono, ma non sono limitati a, quelli indicati nella tabella seguente. Per un elenco dei codici di errore comuni, vedere Valori HRESULT comuni.

Codice/valore restituito Descrizione
CRYPT_E_NOT_FOUND
Impossibile trovare il certificato.
CRYPT_E_UNEXPECTED_MSG_TYPE
Il certificato è stato trovato, ma non è stato possibile caricare la chiave privata.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione certenroll.h
DLL CertEnroll.dll

Vedi anche

ICertProperties

ICertProperty