Bagikan melalui


Metode IAssocHandler::CreateInvoker (shobjidl_core.h)

Mengambil objek yang memungkinkan pemanggilan handler terkait pada pilihan saat ini. Pemanggil menyertakan kemampuan untuk memverifikasi apakah pilihan saat ini didukung.

Sintaks

HRESULT CreateInvoker(
  [in]  IDataObject          *pdo,
  [out] IAssocHandlerInvoker **ppInvoker
);

Parameter

[in] pdo

Jenis: IDataObject*

Penunjuk ke IDataObject yang mewakili item atau item yang dipilih untuk memanggil handler. Perhatikan bahwa jika Anda hanya memiliki satu item, IAssocHandler::Invoke bisa menjadi pilihan yang lebih baik. Lihat Keterangan untuk detail selengkapnya.

[out] ppInvoker

Jenis: IAssocHandlerInvoker**

Ketika metode ini kembali, berisi alamat penunjuk ke objek IAssocHandlerInvoker . Objek ini digunakan untuk memanggil item menu setelah memastikan bahwa item terpilih didukung oleh handler terkait.

Nilai kembali

Jenis: HRESULT

Jika metode ini berhasil, metode akan mengembalikan S_OK. Jika tidak, kode kesalahan HRESULT akan dikembalikan.

Keterangan

Objek IAssocHandler biasanya digunakan untuk mengisi menu Buka Dengan . Ketika salah satu item menu tersebut dipilih, metode ini dipanggil untuk meluncurkan aplikasi yang dipilih.

Memanggil dan MembuatInvoker

IDataObject yang digunakan oleh metode ini dapat mewakili satu file atau mungkin mewakili pilihan beberapa file. Tidak semua aplikasi mendukung opsi beberapa file. Aplikasi yang mendukung skenario tersebut mungkin memberlakukan pembatasan lain seperti jumlah file yang dapat dibuka sekaligus, atau kombinasi jenis file yang dapat diterima.

Oleh karena itu, aplikasi sering harus menentukan apakah handler mendukung pilihan sebelum mencoba memanggil handler. Misalnya, aplikasi mungkin mengaktifkan item menu hanya jika tahu bahwa pilihan yang dimaksud didukung oleh handler tersebut.

Umumnya aman untuk mengasumsikan bahwa aplikasi akan mendukung pemanggilan pada satu item; dalam kasus tersebut, aplikasi biasanya memanggil IAssocHandler::Invoke.

Untuk beberapa skenario pilihan, aplikasi harus memanggil IAssocHandler::CreateInvoker. Metode itu mengambil objek IAssocHandlerInvoker yang memungkinkan aplikasi panggilan untuk terlebih dahulu memeriksa apakah pilihan didukung (SupportsSelection), lalu memanggil handler (Invoke).

IAssocHandler::Invoke dapat dipanggil pada pilihan beberapa file, tetapi tidak disarankan karena beban pemrosesan besar yang terlibat dan tidak ada jaminan keberhasilan.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header shobjidl_core.h (termasuk Shobjidl.h)

Lihat juga

IAssocHandler

IAssocHandler::Invoke

IEnumAssocHandlers