Condividi tramite


Metodo IOpcCertificateEnumerator::GetCurrent (msopc.h)

Ottiene la struttura CERT_CONTEXT nella posizione corrente dell'enumeratore.

Sintassi

HRESULT GetCurrent(
  [out, retval] const CERT_CONTEXT **certificate
);

Parametri

[out, retval] certificate

Puntatore a una struttura CERT_CONTEXT . Se il metodo ha esito positivo, chiamare la funzione CertFreeCertificateContext per liberare la memoria della struttura.

Valore restituito

Il metodo restituisce un valore HRESULT. I valori possibili includono, ma non sono limitati a, quelli indicati nella tabella seguente.

Codice/valore restituito Descrizione
S_OK
Il metodo è riuscito.
E_POINTER
Il parametro partReference è NULL.
OPC_E_ENUM_COLLECTION_CHANGED
0x80510050
L'enumeratore non è valido perché il set sottostante è stato modificato.
OPC_E_ENUM_INVALID_POSITION
0x80510053
L'enumeratore non può eseguire questa operazione dalla posizione corrente.
OPC_E_DS_EXTERNAL_SIGNATURE
0x8051001E
Una relazione la cui destinazione è una parte Signature ha la modalità di destinazione esterna; Le parti della firma devono trovarsi all'interno del pacchetto.
OPC_E_DS_INVALID_CERTIFICATE_RELATIONSHIP
0x8051001D
Una relazione di tipo certificato di firma digitale ha la modalità di destinazione esterna.

Per altre informazioni su questo tipo di relazione, vedere OPC.

OPC_E_DS_INVALID_RELATIONSHIP_TRANSFORM_XML
0x80510021
Elemento Transform che indica l'uso della trasformazione delle relazioni e i criteri di selezione per la trasformazione non sono conformi allo schema specificato in OPC.
OPC_E_DS_MISSING_CERTIFICATE_PART
0x80510056
La parte che contiene il certificato e è la destinazione di una relazione di tipo certificato di firma digitale non esiste.

Per altre informazioni su questo tipo di relazione, vedere OPC.

OPC_E_DS_SIGNATURE_PROPERTY_MISSING_TARGET
0x80510045
L'elemento SignatureProperty manca l'attributo Target obbligatorio.
OPC_E_UNEXPECTED_CONTENT_TYPE
0x80510005
Il tipo di contenuto di una parte è diverso dal tipo di contenuto previsto (specificato in OPC, ECMA-376 Parte 2) oppure il contenuto della parte non corrisponde al tipo di contenuto della parte.

Commenti

Se il certificato rappresentato dalla struttura CERT_CONTEXT è danneggiato o non è un certificato X.509, questo metodo restituirà un errore; inoltre, i criteri di firma usati dal chiamante determinano se la firma verrà comunque convalidata. Dopo la restituzione di questo tipo di errore, le chiamate al metodo MoveNext o MovePrevious continueranno a scorrere l'enumeratore.

Quando viene creato un enumeratore, la posizione corrente precede il primo puntatore dell'enumeratore. Per impostare la posizione corrente sul primo puntatore, chiamare il metodo MoveNext dopo la creazione dell'enumeratore.

Thread safety

I pacchetti degli oggetti non sono thread-safe.

Per altre informazioni, vedere l'Introduzione con l'API per la creazione di pacchetti.

Requisiti

Requisito Valore
Client minimo supportato Windows 7 [solo app desktop]
Server minimo supportato Windows Server 2008 R2 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione msopc.h

Vedi anche

Certificati

Interfacce di creazione di pacchetti principali

Panoramica delle firme digitali

Introduzione con l'API per la creazione di pacchetti

IOpcCertificateEnumerator

IOpcCertificateSet

Cenni preliminari

Guida alla programmazione dell'API per la creazione di pacchetti

Informazioni di riferimento sulle API per la creazione di pacchetti

Esempi di API per la creazione di pacchetti

Interfacce di creazione di pacchetti

Riferimento