IAssocHandler::Metode invoke (shobjidl_core.h)
Secara langsung memanggil handler terkait.
Sintaks
HRESULT Invoke(
[in] IDataObject *pdo
);
Parameter
[in] pdo
Jenis: IDataObject*
Penunjuk ke IDataObject yang mewakili item yang dipilih untuk memanggil handler. Perhatikan bahwa Anda tidak boleh memanggil IAssocHandler::Invoke dengan pilihan beberapa item. Jika Anda memiliki beberapa item, panggil IAssocHandler::CreateInvoker sebagai gantinya. Lihat Keterangan untuk detail selengkapnya.
Nilai kembali
Jenis: HRESULT
Jika metode ini berhasil, metode ini 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 CreateInvoker
IDataObject yang digunakan oleh metode ini dapat mewakili satu file atau 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 secara bersamaan, 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 telah memverifikasi bahwa pilihan yang bersangkutan didukung oleh handler tersebut.
Umumnya aman untuk mengasumsikan bahwa aplikasi akan mendukung pemanggilan pada satu item, dan dalam kasus tersebut aplikasi biasanya memanggil IAssocHandler::Invoke berdasarkan asumsi tersebut.
Namun, 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 bahwa itu akan berhasil.
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) |