Bagikan melalui


Fungsi OleSetAutoConvert (ole2.h)

Menentukan CLSID untuk konversi otomatis ke kelas yang berbeda saat objek kelas tersebut dimuat.

Sintaks

HRESULT OleSetAutoConvert(
  [in] REFCLSID clsidOld,
  [in] REFCLSID clsidNew
);

Parameter

[in] clsidOld

CLSID dari kelas objek yang akan dikonversi.

[in] clsidNew

CLSID dari kelas objek yang harus menggantikan clsidOld. CLSID baru ini menggantikan informasi konversi otomatis yang ada di registri untuk clsidOld. Jika nilai ini CLSID_NULL, informasi konversi otomatis yang ada untuk clsidOld akan dihapus dari registri.

Nilai kembali

Fungsi ini dapat mengembalikan nilai pengembalian standar E_INVALIDARG, E_OUTOFMEMORY, dan E_UNEXPECTED, serta nilai berikut.

Menampilkan kode Deskripsi
S_OK
Objek berhasil ditandai.
REGDB_E_CLASSNOTREG
CLSID tidak terdaftar dengan benar di registri.
REGDB_E_READREGDB
Kesalahan membaca dari registri.
REGDB_E_WRITEREGDB
Kesalahan saat menulis ke registri.
REGDB_E_KEYMISSING
Tidak dapat membaca kunci dari registri.

Keterangan

OleSetAutoConvert masuk ke registri sistem, menemukan subkunci AutoConvertTo di bawah CLSID yang ditentukan oleh clsidOld, dan mengaturnya ke clsidNew. Fungsi ini tidak memvalidasi apakah entri registri yang sesuai untuk clsidNew saat ini ada. Entri ini muncul di registri sebagai subkuntang dari kunci CLSID.

Konversi objek berarti bahwa data objek secara permanen dikaitkan dengan CLSID baru. Konversi otomatis biasanya ditentukan dalam program penyiapan versi baru aplikasi objek, sehingga objek yang dibuat oleh versi lamanya dapat diperbarui secara otomatis ke versi baru.

Misalnya, mungkin perlu untuk mengonversi spreadsheet yang dibuat dengan versi aplikasi spreadsheet yang lebih lama ke versi baru. Objek spreadsheet dari versi sebelumnya memiliki CLSID yang berbeda dari versi baru. Untuk setiap versi sebelumnya yang ingin Anda perbarui secara otomatis, Anda akan memanggil OleSetAutoConvert dalam program penyiapan, menentukan CLSID dari versi lama, dan yang baru. Kemudian, setiap kali pengguna memuat objek dari versi sebelumnya, objek tersebut akan diperbarui secara otomatis. Untuk mendukung konversi objek otomatis, server yang mendukung konversi harus siap untuk mengonversi objek secara manual yang memiliki format versi server sebelumnya. Konversi otomatis bergantung secara internal pada dukungan konversi manual ini.

Sebelum mengatur nilai AutoConvertTo yang diinginkan, program penyiapan juga harus memanggil OleSetAutoConvert untuk menghapus konversi yang ada untuk kelas baru, dengan menentukan kelas baru sebagai parameter clsidOld , dan mengatur parameter clsidNew ke CLSID_NULL.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header ole2.h
Pustaka Ole32.lib
DLL Ole32.dll

Lihat juga

AutoConvertTo

OleDoAutoConvert

OleGetAutoConvert