Bagikan melalui


IOpcSignatureRelationshipReferenceSet::Create method (msopc.h)

Membuat penunjuk antarmuka IOpcSignatureRelationshipReference yang mewakili referensi ke bagian Hubungan, dan menambahkan penunjuk antarmuka baru ke set. Semua atau subset hubungan yang disimpan di bagian Hubungan yang akan dirujuk dipilih untuk penandatanganan.

Sintaks

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

Parameter

[in] sourceUri

Penunjuk antarmuka IOpcUri yang mewakili URI sumber hubungan yang akan dipilih untuk penandatanganan.

[in] digestMethod

Metode hash yang akan digunakan untuk hubungan yang akan dipilih. Untuk menggunakan metode hash default, berikan NULL dalam parameter ini.

Penting Metode digest default harus diatur dengan memanggil metode IOpcSigningOptions::SetDefaultDigestMethod sebelum IOpcDigitalSignatureManager::Sign dipanggil.
 

[in] relationshipSigningOption

Nilai yang menunjukkan apakah hubungan yang dipilih untuk penandatanganan menyertakan semua atau subset hubungan di bagian Hubungan yang akan dirujuk.

Untuk informasi tentang efek nilai relationshipSigningOption pada parameter lain, lihat Keterangan.

[in] selectorSet

Penunjuk antarmuka IOpcRelationshipSelectorSet yang dapat digunakan untuk mengidentifikasi subset hubungan di bagian Hubungan yang akan dipilih untuk penandatanganan.

Jika relationshipSigningOption diatur ke OPC_RELATIONSHIP_SIGN_PART, selectorSet adalah NULL.

Untuk informasi tentang nilai selectorSet , lihat Keterangan.

[in] transformMethod

Nilai yang menjelaskan metode kanonisisasi yang akan diterapkan ke markup hubungan dari hubungan yang dipilih.

Jika relationshipSigningOption diatur OPC_RELATIONSHIP_SIGN_USING_SELECTORS, nilai transformMethod diabaikan.

Untuk informasi selengkapnya tentang metode transformasi yang akan diterapkan saat relationshipSigningOption diatur ke OPC_RELATIONSHIP_SIGN_USING_SELECTORS, lihat Keterangan.

[out, retval] relationshipReference

Penunjuk antarmuka IOpcSignatureRelationshipReference baru yang mewakili bagian Hubungan yang direferensikan.

Nilai kembali

Metode mengembalikan HRESULT. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut.

Menampilkan kode Deskripsi
S_OK
Metode berhasil.
E_INVALIDARG
Nilai yang diteruskan dalam parameter relationshipSigningOption bukan nilai enumerasi OPC_RELATIONSHIPS_SIGNING_OPTION yang valid.
E_INVALIDARG
Nilai yang diteruskan dalam parameter transformMethod bukan nilai enumerasi OPC_CANONICALIZATION_METHOD yang valid.
E_POINTER
Parameter sourceUri adalah NULL.
E_UNEXPECTED
Parameter selectorSet tidak diteruskan NULL saat parameter relationshipSigningOption melewati nilai OPC_RELATIONSHIP_SIGN_PART.

Keterangan

Metode ini membuat referensi ke bagian Hubungan. Semua atau subset hubungan yang disimpan dalam bagian Hubungan yang direferensikan dapat ditandatangani saat tanda tangan dibuat.

Untuk menandatangani semua hubungan di bagian Hubungan, panggil metode ini dengan nilai parameter relationshipSigningOption yang diatur ke OPC_RELATIONSHIP_SIGN_PART dan nilai parameter selectorSet diatur ke NULL.

Untuk menandatangani subset hubungan di bagian Hubungan, panggil metode ini dengan nilai parameter relationshipSigningOption yang diatur ke OPC_RELATIONSHIP_SIGN_USING_SELECTORS dan nilai parameter selectorSet diatur ke penunjuk antarmuka IOpcRelationshipSelectorSet . Untuk membuat penunjuk antarmuka IOpcRelationshipSelectorSet , panggil metode CreateRelationshipSelectorSet .

Tabel berikut ini meringkas nilai parameter yang diperlukan oleh metode ini untuk membuat referensi yang menunjukkan apakah semua hubungan atau subset hubungan (yang disimpan di bagian Hubungan yang akan direferensikan) akan ditandatangani.

Deskripsi relationshipSigningOption Nilai selectorSet Nilai
Menandatangani semua hubungan di bagian Hubungan OPC_RELATIONSHIP_SIGN_PART NULL
Menandatangani subset hubungan di bagian Hubungan OPC_RELATIONSHIP_SIGN_USING_SELECTORS Penunjuk antarmuka IOpcRelationshipSelectorSet
 

Jika subset hubungan akan ditandatangani, metode transformasi yang ditentukan diabaikan. Sebaliknya, ketika tanda tangan dihasilkan, transformasi pertama yang diterapkan adalah Transformasi Hubungan, dan yang kedua adalah metode kanonisisasi OPC_CANONICALIZATION_C14N .

Ketika penunjuk antarmuka IOpcSignatureRelationshipReference dibuat dan ditambahkan ke set, referensi yang diwakilinya disimpan saat paket disimpan.

Hubungan yang tidak akan ditandatangani dapat dihapus, dimodifikasi, atau ditambahkan ke paket tanpa membatalkan tanda tangan. Jika subset hubungan telah dipilih untuk penandatanganan dan subset diubah, tanda tangan akan tidak valid.

Penting Subset yang dipilih dapat diubah jika jenis hubungan hubungan yang ditambahkan ke atau dimodifikasi dalam bagian Hubungan yang direferensikan cocok dengan jenis hubungan yang digunakan untuk memilih satu atau beberapa hubungan dalam subset.
 

Keamanan Thread

Objek pengemasan tidak aman untuk utas.

Untuk informasi selengkapnya, lihat Memulai PACKAGING API.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 7 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 R2 [hanya aplikasi desktop]
Target Platform Windows
Header msopc.h

Lihat juga

Antarmuka Pengemasan Inti

Mulai menggunakan API Kemasan

IOpcDigitalSignatureManager

IOpcSignatureRelationshipReferenceSet

IOpcSigningOptions

OPC_CANONICALIZATION_METHOD

OPC_RELATIONSHIPS_SIGNING_OPTION

Gambaran Umum

Panduan Pemrograman API Pengemasan

Referensi API Pengemasan

Sampel API Pengemasan

Kemasan Antarmuka Tanda Tangan Digital

Antarmuka Pengemasan

Referensi