CryptXmlOpenToEncode 関数 (cryptxml.h)

CryptXmlOpenToEncode 関数がエンコードする XML デジタル署名を開き、開かれた Signature 要素のハンドルを返します。 ハンドルは、1 つの CRYPT_XML_SIGNATURE 構造でドキュメント コンテキストをカプセル化し、 CryptXmlClose 関数が呼び出されるまで開いたままです。

構文

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
);

パラメーター

[in, optional] pConfig

変換チェーン エンジンのハンドル。 このパラメーターが NULL の場合は、変換を適用するために既定のエンジンが使用されます。

dwFlags

読み込まれる CryptXML 拡張機能と XML をシリアル化するかどうかを制御する DWORD 値。 このパラメーターには、次の値のいずれかを指定できます。

意味
CRYPT_XML_FLAG_NO_SERIALIZE
0x80000000
シリアル化を禁止します。
メモ 複数のスレッドが CryptXml オブジェクトにアクセスしている場合は、このフラグを設定しないでください。 シリアル化により、2 つ以上のスレッドが CryptXml オブジェクトまたはメモリを同時に受け入れようとしたときに、相互の除外が保証されます。
 
CRYPT_XML_FLAG_DISABLE_EXTENSIONS
0x10000000
シグネチャとダイジェストの既定の実装のみが使用されます。 このフラグが設定されている場合、他の登録済み拡張機能は読み込まれません。

[in, optional] wszId

Signature 要素の Id 属性を含む null で終わる Unicode 文字列へのポインター。 このパラメーターが NULL の場合は、新しい GUID が生成されます。 このパラメーターが空の文字列の場合、 Id 属性は生成されません。

[in] rgProperty

追加のプロパティを指定 するCRYPT_XML_PROPERTY 構造体の配列へのポインター。

[in] cProperty

rgProperty パラメーターが指す配列内の要素の数。

[in, optional] pEncoded

エンコードする署名を含む CRYPT_XML_BLOB 構造体へのポインター。

[optional] phSignature

Signature 要素へのハンドル。

戻り値

関数が成功した場合、関数は 0 を返します。

関数が失敗した場合は、エラーを示す HRESULT 値を返します。

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー cryptxml.h
Library Cryptxml.lib
[DLL] Cryptxml.dll