IOpcDigitalSignatureManager::ReplaceSignatureXml method (msopc.h)
Menggantikan markup tanda tangan yang ada yang disimpan dalam bagian tanda tangan tertentu.
Sintaks
HRESULT ReplaceSignatureXml(
[in] IOpcPartUri *signaturePartName,
[in] const UINT8 *newSignatureXml,
[in] UINT32 count,
[out, retval] IOpcDigitalSignature **digitalSignature
);
Parameter
[in] signaturePartName
Penunjuk antarmuka IOpcPartUri yang mewakili nama bagian dari bagian tanda tangan yang menyimpan markup tanda tangan yang ada.
[in] newSignatureXml
Buffer yang berisi markup tanda tangan yang akan menggantikan markup yang ada.
[in] count
Ukuran buffer newSignatureXml .
[out, retval] digitalSignature
Penunjuk ke antarmuka IOpcDigitalSignature baru yang mewakili tanda tangan yang berasal dari markup tanda tangan yang diteruskan di newSignatureXml.
Nilai kembali
Metode mengembalikan HRESULT. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut.
Mengembalikan kode/nilai | Deskripsi |
---|---|
|
Metode berhasil. |
|
Setidaknya salah satu parameter signaturePartName, newSignatureXml, dan digitalSignature adalah NULL. |
|
Buffer newSignatureXml berisi lebih dari satu elemen Referensi yang mengacu pada elemen Objek paket, tetapi hanya satu Referensi tersebut yang diizinkan. |
|
Buffer newSignatureXml berisi lebih dari satu elemen SignatureProperty yang memiliki atribut Id yang sama. |
|
Dalam buffer newSignatureXml , elemen Referensi mengacu pada objek yang berada di luar paket. Elemen referensi harus menunjuk ke bagian atau elemen Objek yang internal. |
|
Metode kanonisisasi yang tidak didukung diminta atau digunakan dalam buffer newSignatureXml . |
|
Dalam buffer newSignatureXml , elemen Transformasi yang menunjukkan penggunaan transformasi hubungan dan kriteria pemilihan untuk transformasi tidak sesuai dengan skema yang ditentukan dalam OPC. |
|
Buffer newSignatureXml tidak berisi markup tanda tangan untuk tepat satu tanda tangan. |
|
Ukuran buffer newSignatureXml adalah 0, tetapi buffer ini harus memiliki ukuran yang lebih besar dari 0. |
|
Dalam buffer newSignatureXml , transformasi hubungan tidak diikuti dengan metode kanonisisasi; transformasi hubungan harus diikuti dengan metode kanonisisasi. |
|
Dalam buffer newSignatureXml , Referensi ke elemen Objek khusus paket tidak ditemukan. |
|
Markup tanda tangan di buffer newSignatureXml tidak menentukan algoritma metode tanda tangan. |
|
Dalam buffer newSignatureXml , elemen SignatureProperties tidak ditemukan. |
|
Dalam buffer newSignatureXml , elemen turunan SignatureProperty dari elemen SignatureProperties tidak ditemukan. |
|
Dalam buffer newSignatureXml , elemen SignatureProperty dengan nilai atribut Id "idSignatureTime" tidak ada atau tidak dibangun dengan benar. |
|
Dalam buffer newSignatureXml , lebih dari satu transformasi hubungan ditentukan untuk elemen Referensi , tetapi hanya satu transformasi hubungan yang diizinkan. |
|
Nilai atribut URI dari elemen Referensi dalam buffer newSignatureXml tidak menyertakan jenis konten bagian yang direferensikan. |
|
Dalam buffer newSignatureXml , elemen SignatureProperty tidak memiliki atribut Target yang diperlukan. |
|
Elemen Referensi , yang ada di buffer newSignatureXml , memerlukan atribut URI , tetapi atribut hilang. |
|
Paket tidak ditandatangani; oleh karena itu, markup tanda tangan tidak dapat diganti. |
|
Bagian yang ditentukan tidak ada. |
Keterangan
Metode ini tidak memvalidasi tanda tangan yang berasal dari markup tanda tangan baru yang ada di parameter newSignatureXml .
Pemanggil harus mengonfirmasi bahwa markup tanda tangan baru, yang menggantikan markup tanda tangan yang ada di bagian tanda tangan yang ditentukan, tidak akan memutus tanda tangan.
Metode ini mengubah markup tanda tangan yang ada; sertifikat dan hubungan yang memiliki bagian tanda tangan yang ditentukan sebagai sumbernya dipertahankan.
Keamanan Thread
Objek pengemasan tidak aman untuk rangkaian.
Untuk informasi selengkapnya, lihat Memulai API Kemasan.
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
Gambaran Umum Tanda Tangan Digital
Gambaran Umum
Panduan Pemrograman API Pengemasan
Kemasan Antarmuka Tanda Tangan Digital
Referensi
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk