IShellExtInit::Initialize 方法 (shobjidl_core.h)
初始化属性表扩展、快捷菜单扩展或拖放处理程序。
语法
HRESULT Initialize(
[in] PCIDLIST_ABSOLUTE pidlFolder,
[in] IDataObject *pdtobj,
[in] HKEY hkeyProgID
);
参数
[in] pidlFolder
类型: PCIDLIST_ABSOLUTE
指向唯一标识文件夹的 ITEMIDLIST 结构的指针。 对于属性表扩展,此参数为 NULL。 对于快捷菜单扩展,它是包含要显示其快捷菜单的项的文件夹的项目标识符列表。 对于非默认拖放菜单扩展,此参数指定目标文件夹。
[in] pdtobj
类型: IDataObject*
指向 IDataObject 接口对象的指针,该对象可用于检索正在执行操作的对象。
[in] hkeyProgID
类型: HKEY
文件对象或文件夹类型的注册表项。
返回值
类型: HRESULT
如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。
注解
某些参数的含义取决于扩展类型。 对于拖放处理程序, pidlFolder 参数指定目标文件夹 (放置目标) , pdtobj 参数标识要删除的项目, hkeyProgID 参数指定目标文件夹的文件类型。
对于 快捷菜单扩展, pdtobj 标识所选文件对象, hkeyProgID 使用焦点标识对象的 文件类型 , pidlFolder 对于) 的文件对象为 NULL (,或者指定 (文件夹后台快捷菜单) 请求快捷菜单的文件夹。
对于属性表扩展, pidlFolder 为 NULL, pdtobj 标识所选文件对象, hkeyProgID 指定具有焦点的文件对象的文件类型。
实施者说明
这是 Shell 在创建属性表扩展、快捷菜单扩展或拖放处理程序的实例后调用的第一种方法。要求
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | shobjidl_core.h (包括 Shobjidl.h) |
DLL | Shell32.dll (4.0 或更高版本) |