IOpcSignatureRelationshipReferenceSet::Create メソッド (msopc.h)
リレーションシップ パーツへの参照を表す IOpcSignatureRelationshipReference インターフェイス ポインターを作成し、新しいインターフェイス ポインターをセットに追加します。 参照するリレーションシップ パーツに格納されているリレーションシップのすべてまたはサブセットが、署名用に選択されます。
構文
HRESULT Create(
[in] IOpcUri *sourceUri,
[in] LPCWSTR digestMethod,
[in] OPC_RELATIONSHIPS_SIGNING_OPTION relationshipSigningOption,
[in] IOpcRelationshipSelectorSet *selectorSet,
[in] OPC_CANONICALIZATION_METHOD transformMethod,
[out, retval] IOpcSignatureRelationshipReference **relationshipReference
);
パラメーター
[in] sourceUri
署名用に選択するリレーションシップのソース URI を表す IOpcUri インターフェイス ポインター。
[in] digestMethod
選択するリレーションシップに使用するダイジェスト メソッド。 既定のダイジェスト メソッドを使用するには、このパラメーターに NULL を 渡します。
[in] relationshipSigningOption
署名のために選択したリレーションシップに、参照するリレーションシップ パーツ内のリレーションシップのすべてまたはサブセットが含まれるかどうかを示す 値です。
relationshipSigningOption 値が他のパラメーターに与える影響については、「解説」を参照してください。
[in] selectorSet
署名用に選択するリレーションシップ パーツ内のリレーションシップのサブセットを識別するために使用できる IOpcRelationshipSelectorSet インターフェイス ポインター。
relationshipSigningOption がOPC_RELATIONSHIP_SIGN_PARTに設定されている場合、selectorSet は NULL です。
selectorSet 値の詳細については、「解説」を参照してください。
[in] transformMethod
選択したリレーションシップのリレーションシップ マークアップに適用する正規化方法を表す 値。
relationshipSigningOption がOPC_RELATIONSHIP_SIGN_USING_SELECTORS設定されている場合、transformMethod の値は無視されます。
relationshipSigningOption がOPC_RELATIONSHIP_SIGN_USING_SELECTORSに設定されている場合に適用される変換メソッドの詳細については、「解説」を参照してください。
[out, retval] relationshipReference
参照されるリレーションシップ パーツを表す新しい IOpcSignatureRelationshipReference インターフェイス ポインター。
戻り値
このメソッドは HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。
リターン コード | 説明 |
---|---|
|
メソッドが成功しました。 |
|
relationshipSigningOption パラメーターで渡された値が、有効なOPC_RELATIONSHIPS_SIGNING_OPTION列挙値ではありません。 |
|
transformMethod パラメーターで渡される値は、有効なOPC_CANONICALIZATION_METHOD列挙値ではありません。 |
|
sourceUri パラメーターは NULL です。 |
|
relationshipSigningOption パラメーターに OPC_RELATIONSHIP_SIGN_PART の値が渡されている間、selectorSet パラメーターは NULL に渡されません。 |
注釈
このメソッドは、リレーションシップ パーツへの参照を作成します。 参照されるリレーションシップ パーツに格納されているリレーションシップのすべてまたはサブセットは、署名の生成時に署名できます。
リレーションシップ パーツ内のすべてのリレーションシップに署名するには、 relationshipSigningOption パラメーター値を OPC_RELATIONSHIP_SIGN_PART に設定し、 selectorSet パラメーター値を NULL に設定して、このメソッドを呼び出 します。
リレーションシップ パーツ内のリレーションシップのサブセットに署名するには、 relationshipSigningOption パラメーター値を OPC_RELATIONSHIP_SIGN_USING_SELECTORS に設定し、 selectorSet パラメーター値を IOpcRelationshipSelectorSet インターフェイス ポインターに設定して、このメソッドを呼び出します。 IOpcRelationshipSelectorSet インターフェイス ポインターを作成するには、CreateRelationshipSelectorSet メソッドを呼び出します。
次の表は、すべてのリレーションシップまたはリレーションシップのサブセット (参照するリレーションシップ パーツに格納されている) を署名するかどうかを示す参照を作成するために、このメソッドで必要なパラメーター値をまとめたものです。
説明 | relationshipSigningOption 値 | selectorSet 値 |
---|---|---|
リレーションシップ パーツ内のすべてのリレーションシップに署名する | OPC_RELATIONSHIP_SIGN_PART | NULL |
リレーションシップ パーツ内のリレーションシップのサブセットに署名する | OPC_RELATIONSHIP_SIGN_USING_SELECTORS | IOpcRelationshipSelectorSet インターフェイス ポインター |
リレーションシップのサブセットに署名する場合、指定された変換メソッドは無視されます。 代わりに、シグネチャが生成されるときに適用される最初の変換はリレーションシップ変換で、2 つ目は OPC_CANONICALIZATION_C14N 正規化メソッドです。
IOpcSignatureRelationshipReference インターフェイス ポインターが作成され、セットに追加されると、それが表す参照はパッケージの保存時に保存されます。
署名されないリレーションシップは、署名を無効にすることなく、パッケージに削除、変更、または追加できます。 署名のためにリレーションシップのサブセットが選択されていて、そのサブセットが変更された場合、署名は無効になります。
スレッド セーフ
パッケージ 化オブジェクトはスレッド セーフではありません。
詳細については、Packaging API を使用したはじめにに関するページを参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | msopc.h |
こちらもご覧ください
IOpcSignatureRelationshipReferenceSet
OPC_RELATIONSHIPS_SIGNING_OPTION
概要
参照