Bagikan melalui


Fungsi OleRegEnumFormatEtc (ole2.h)

Membuat objek enumerasi yang dapat digunakan untuk menghitung format data yang telah didaftarkan server objek OLE di registri sistem. Aplikasi objek atau penanganan objek memanggil fungsi ini ketika harus menghitung format tersebut. Pengembang aplikasi objek DLL kustom menggunakan fungsi ini untuk meniru perilaku handler objek default.

Sintaks

HRESULT OleRegEnumFormatEtc(
  [in]  REFCLSID        clsid,
  [in]  DWORD           dwDirection,
  [out] LPENUMFORMATETC *ppenum
);

Parameter

[in] clsid

CLSID dari kelas yang formatnya sedang diminta.

[in] dwDirection

Menunjukkan apakah akan menghitung format yang dapat diteruskan ke IDataObject::GetData atau format yang dapat diteruskan ke IDataObject::SetData. Nilai yang mungkin diambil dari DATADIR enumerasi.

[out] ppenum

Alamat variabel penunjuk IEnumFORMATETC yang menerima penunjuk antarmuka ke objek enumerasi.

Nilai kembali

Fungsi ini mengembalikan S_OK pada keberhasilan. Nilai lain yang mungkin termasuk yang berikut ini.

Menampilkan kode Deskripsi
E_OUTOFMEMORY
Memori untuk operasi tidak cukup.
REGDB_E_CLASSNOTREG
Tidak ada CLSID yang terdaftar untuk objek kelas.
REGDB_E_READREGDB
Terjadi kesalahan saat membaca registri.
OLE_E_REGDB_KEY
Kunci DataFormats/GetSet hilang dari registri.

Keterangan

Aplikasi objek dapat meminta OLE untuk membuat objek enumerasi untuk struktur FORMATETC untuk menghitung format data yang didukung dengan salah satu dari dua cara. Salah satu caranya adalah dengan memanggil OleRegEnumFormatEtc. Yang lain adalah mengembalikan OLE_S_USEREG sebagai respons terhadap panggilan oleh handler objek default ke IDataObject::EnumFormatEtc. OLE_S_USEREG menginstruksikan handler default untuk memanggil OleRegEnumFormatEtc. Karena aplikasi objek DLL tidak dapat mengembalikan OLE_S_USEREG, aplikasi harus memanggil OleRegEnumFormatEtc daripada mendelegasikan pekerjaan ke handler objek. Dengan penunjuk IEnumFORMATETC yang disediakan ke objek , Anda dapat memanggil metode objek enumerasi standar untuk melakukan enumerasi.

Fungsi OleRegEnumFormatEtc dan fungsi saudaranya, OleRegGetUserType, OleRegGetMiscStatus, dan OleRegEnumVerbs, menyediakan cara bagi pengembang aplikasi objek DLL kustom untuk meniru perilaku handler objek default OLE dalam mendapatkan informasi tentang objek dari registri. Dengan menggunakan fungsi-fungsi ini, Anda menghindari pekerjaan penulisan Anda sendiri yang cukup besar, dan jebakan yang melekat dalam bekerja langsung di registri. Selain itu, Anda mendapatkan penyempurnaan dan pengoptimalan fungsi-fungsi ini di masa mendatang tanpa harus mengkodekannya sendiri.

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

IDataObject::EnumFormatEtc

IEnumFORMATETC