Funzione CryptXmlOpenToEncode (cryptxml.h)

Se la funzione CryptXmlOpenToEncode apre una firma digitale XML per codificare e restituisce un handle dell'elemento Signature aperto. L'handle incapsula un contesto di documento con una singola struttura CRYPT_XML_SIGNATURE e rimane aperto finché non viene chiamata la funzione CryptXmlClose .

Sintassi

HRESULT CryptXmlOpenToEncode(
  [in, optional] const CRYPT_XML_TRANSFORM_CHAIN_CONFIG *pConfig,
                 DWORD                                  dwFlags,
  [in, optional] LPCWSTR                                wszId,
  [in]           const CRYPT_XML_PROPERTY               *rgProperty,
  [in]           ULONG                                  cProperty,
  [in, optional] const CRYPT_XML_BLOB                   *pEncoded,
  [optional]     HCRYPTXML                              *phSignature
);

Parametri

[in, optional] pConfig

Handle del motore della catena di trasformazione. Se questo parametro è NULL, viene usato un motore predefinito per applicare le trasformazioni.

dwFlags

Valore DWORD che controlla quali estensioni CryptXML vengono caricate e se il file XML viene serializzato. Questo parametro può avere uno dei valori seguenti.

Valore Significato
CRYPT_XML_FLAG_NO_SERIALIZE
0x80000000
Inibire la serializzazione.
Nota Non impostare questo flag quando più thread accedono a un oggetto CryptXml. La serializzazione garantisce l'esclusione reciproca quando due o più thread tentano di accettare simultaneamente un oggetto o una memoria CryptXml.
 
CRYPT_XML_FLAG_DISABLE_EXTENSIONS
0x10000000
Vengono usate solo le implementazioni predefinite per la firma e il digest. Quando questo flag è impostato, non vengono caricate altre estensioni registrate.

[in, optional] wszId

Puntatore a una stringa Unicode con terminazione null contenente l'attributo Id dell'elemento Signature . Se questo parametro è NULL, viene generato un nuovo GUID. Se questo parametro è una stringa vuota, non viene generato alcun attributo Id .

[in] rgProperty

Puntatore a una matrice di strutture CRYPT_XML_PROPERTY che specificano proprietà aggiuntive.

[in] cProperty

Numero di elementi nella matrice a cui punta il parametro rgProperty .

[in, optional] pEncoded

Puntatore a una struttura CRYPT_XML_BLOB che contiene la firma da codificare.

[optional] phSignature

Handle dell'elemento Signature .

Valore restituito

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

Se la funzione ha esito negativo, restituisce un valore HRESULT che indica l'errore.

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 cryptxml.h
Libreria Cryptxml.lib
DLL Cryptxml.dll