Struktur DEFCONTEXTMENU (shlobj_core.h)
Berisi informasi menu konteks yang digunakan oleh SHCreateDefaultContextMenu.
Sintaks
typedef struct {
HWND hwnd;
IContextMenuCB *pcmcb;
PCIDLIST_ABSOLUTE pidlFolder;
IShellFolder *psf;
UINT cidl;
PCUITEMID_CHILD_ARRAY apidl;
IUnknown *punkAssociationInfo;
UINT cKeys;
const HKEY *aKeys;
} DEFCONTEXTMENU;
Anggota
hwnd
Jenis: HWND
Handel ke menu konteks. Atur anggota ini ke handel yang dikembalikan dari CreateMenu.
pcmcb
Jenis: IContextMenuCB*
Penunjuk ke antarmuka IContextMenuCB yang didukung oleh objek panggilan balik. Nilai ini bersifat opsional dan dapat berupa NULL.
pidlFolder
Jenis: PCIDLIST_ABSOLUTE
PIDL folder yang berisi objek file yang dipilih atau folder menu konteks jika tidak ada objek file yang dipilih. Nilai ini bersifat opsional dan dapat berupa NULL, dalam hal ini PIDL dihitung dari anggota psf .
psf
Jenis: IShellFolder*
Penunjuk ke antarmuka IShellFolder objek folder yang berisi objek file yang dipilih, atau folder yang berisi menu konteks jika tidak ada objek file yang dipilih.
cidl
Jenis: UINT
Jumlah item dalam apidl anggota.
apidl
Jenis: PCUITEMID_CHILD_ARRAY
Penunjuk ke array konstan struktur ITEMIDLIST . Setiap entri dalam array menjelaskan item anak tempat menu konteks diterapkan, misalnya, file yang dipilih yang ingin dibuka pengguna.
punkAssociationInfo
Jenis: IUnknown*
Penunjuk ke antarmuka IQueryAssociations pada objek tempat memuat ekstensi. Parameter ini bersifat opsional dan dengan demikian dapat berupa NULL. Jika nilai ini NULL dan anggota aKeys dan cKeys juga NULL (lihat Remarks), punkAssociationInfo dihitung dari anggota apidl dan cidl melalui permintaan IQueryAssociations melalui IShellFolder::GetUIObjectOf.
Jika IShellFolder::GetUIObjectOf mengembalikan E_NOTIMPL, implementasi default disediakan berdasarkan atribut SFGAO_FOLDER dan SFGAO_FILESYSTEM yang dikembalikan dari IShellFolder::GetAttributesOf.
cKeys
Jenis: UINT
Jumlah item dalam aKeys anggota. Nilai ini bisa nol. Jika nilainya nol, ekstensi dimuat berdasarkan objek yang mendukung antarmuka IQueryAssociations seperti yang ditentukan oleh anggota punkAssociationInfo. Jika nilainya non-NULL, ekstensi dimuat hanya berdasarkan aKeys anggota dan bukan anggota punkAssociationInfo.
aKeys
Jenis: const HKEY*
Penunjuk ke HKEY yang menentukan kunci registri untuk memuat ekstensi. Parameter ini bersifat opsional dan dapat berupa NULL. Jika nilainya NULL, ekstensi dimuat berdasarkan objek yang mendukung antarmuka IQueryAssociations seperti yang ditentukan dalam punkAssociationInfo.
Keterangan
Jika anggota aKeys dan cKeys valid dan anggota punkAssociationInfo juga valid (bukan NULL), sistem membuat menu menggunakan nilai aKeys dan cKeys, dan mengabaikan anggota punkAssociationInfo (IQueryAssociations).
Members apidl dan cidl dapat digunakan sebagai parameter untuk metode IShellFolder::GetUIObjectOf untuk mengambil IDataObject.
Persyaratan
Klien minimum yang didukung | Windows Vista [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 [hanya aplikasi desktop] |
Header | shlobj_core.h (termasuk Shlobj.h) |