分类: C/C++
2008-04-15 21:05:14
来源:CSDN 作者:行舟 |
CMINVOKECOMMANDINFO的成员简介如下: 1) cbSize :结构的大小。 2) fMask :为0,或下列标志的组合。 3) hwnd :拥有上下文菜单窗口的句柄,handler可以使用这个句柄显示自己的信息提示框和对话框。 4) lpVerb :32位值,高位字包含0,低位字是命令的菜单ID偏移。当用户选择一个菜单命令时,Shell用MAKEINTRESOURCE宏产生这个值,如果高位字不是0,那么这个成员指向一个以NULL结尾的字符串,指出命令的语言无关的名称,即上文的verb。典型情况下,当命令被一个应用程序激活时,这个成员是一个字符串。系统提供了下面几个预定义的常数值: 5) lpParameters :命令传送的参数字符串,对于shell扩展插入的菜单项,这个成员总是NULL。 6) lpDirectory :目录名称,对于shell扩展插入的菜单项,这个成员总是NULL。 7) nShow :显示窗口或启动应用程序时,传递给ShowWindow函数的参数。 8) dwHotKey :分配给被命令激活的应用程序的热键。如果fMask 不是CMIC_MASK_HOTKEY,这个成员被忽略。 9) hIcon :被命令激活的应用程序使用的图标。如果fMask 不是CMIC_MASK_ICON,这个成员被忽略。 以下示例先打开一个"选择文件"的对话框,然后用所选择的程序打开在资源管理器中被选择的文件。为了简化,假定在资源管理器只选择了一个文件。 HRESULT __stdcall TAddContextMenuImpl::InvokeCommand(LPCMINVOKECOMMANDINFO pici) |