- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
在我的 IContextMenu
实现中COM 服务器,QueryContextMenu
被调用(可以通过日志查看)但是 InvokeCommand
没有。这是 QueryContextMenu
:
HRESULT ContexMenuImp::QueryContextMenu(HMENU hmenu,UINT indexMenu,UINT idCmdFirst,
UINT idCmdLast,UINT uFlags)
{
if (uFlags & CMF_DEFAULTONLY) {
// shouldn't handle this situation:
LOG("IContextMenu::QueryContextMenu: (...,CMF_DEFAULTONLY)");
return MAKE_HRESULT(SEVERITY_SUCCESS,FACILITY_NULL,0);
}else if (InsertMenuItem(hmenu,indexMenu,TRUE,&globals.menuItemInfo) == FALSE){
// error occurred:
LOG("IContextMenu::QueryContextMenu: Error: %d",GetLastError());
return MAKE_HRESULT(SEVERITY_SUCCESS,FACILITY_NULL,0);
} else{
// the desired situation: add item to the menu:
LOG("IContextMenu::QueryContextMenu(hMenu,indexMenu:%u,idCmdFirst:%u,idCmdLast:%u,0x%x): All set...",
indexMenu,idCmdFirst,idCmdLast,uFlags);
return MAKE_HRESULT(SEVERITY_SUCCESS,FACILITY_NULL,1/*handle only a single item*/);
}
}
知道为什么吗?
最佳答案
您在插入菜单时忘记遵守 idCmdFirst
。
globals.menuItemInfo.wID = idCmdFirst;
globals.menuItemInfo.fMask |= MIIM_ID;
(所以我是对的:您添加了错误 ID 的菜单项。)
请注意,由于每个上下文菜单可能有不同的 ID,因此您不应使用全局 ID。
关于c++ - IContextMenu::QueryContextMenu 被调用,但 IContextMenu::InvokeCommand 没有,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7712568/
我正在尝试学习 ReactiveUI,所以我正在制作示例应用程序,但我在使用 InvokeCommand 时遇到问题。基本上每次 SearchPhrase 属性更改时,我的 ShowSearchPhr
我有一个TListView,它的项目是文件,用户可以通过双击打开这些文件。 为此,我将文件保存在 Windows 临时文件夹中,启动一个线程以使用 ShellExecuteEx() 打开保存的文件,并
我正在使用代理功能,我想完全理解我正在查看的所有代码。 鉴于这种: $MetaData = New-Object System.Management.Automation.CommandMetaDat
好的,我已经编写了一个在 Windows 8 中完美运行的脚本。我切换到 Windows 7 并获得了各种血液。经过一番调试,我发现了问题所在。 Win 8 使用 PowerShell 3.0,Win
我有以下代码来删除文件。此代码在 winXP 上运行良好。但是当我在 Windows 7 上运行时,它不会删除该文件。执行 InvokeCommand 语句时,我得到错误代码 0x80270000。
在我的 IContextMenu 实现中COM 服务器,QueryContextMenu被调用(可以通过日志查看)但是 InvokeCommand没有。这是 QueryContextMenu: HRE
我已经使用 COM 创建了一个 windows 的 shell 扩展,但是我似乎无法正确匹配我在 IContextMenu::QueryContextMenu 的重载中添加的项目的 ID使用我在 IC
我有一个脚本如下 [string]$newValue = Get-ConfigurationByType $setting.Value 在这一行之后,$newValue 的值是 "http://ST-
我的 shell 扩展代码在 Windows 7 下运行良好。但是,在Windows server 2008x64或windows 7x64中,当Selected Files的数量超过16个时,调用的
我是一名优秀的程序员,十分优秀!