自定义浏览器控件中去除默认IE右键菜单中的垃圾项(如百度XXX搜索)
来源:互联网 发布:linux jobs命令加减号 编辑:程序博客网 时间:2024/05/16 18:50
在自定义浏览器控件中使用IE默认右键菜单中的部分项及其功能,去除那些烦人的垃圾项和查看源代码等项,方法如下:IDocHostUIHandler_MY::ShowContextMenu(DWORD dwID,POINT __RPC_FAR *ppt,
IUnknown __RPC_FAR *pcmdtReserved,
IDispatch __RPC_FAR *pdispReserved)
{
HWND hwnd;
CComPtr<IOleCommandTarget> spCT;
CComPtr<IOleWindow> spWnd;
HRESULT hr = pcmdtReserved->QueryInterface(IID_IOleCommandTarget, (void**)&spCT);
hr = pcmdtReserved->QueryInterface(IID_IOleWindow, (void**)&spWnd);
hr = spWnd->GetWindow(&hwnd);
HINSTANCE hinstSHDOCLC = LoadLibrary(TEXT("SHDOCLC.DLL"));
if (hinstSHDOCLC == NULL)
{
// 载入模块错误 -- 采用浏览器控件的默认处理
return E_NOTIMPL;
}
HMENU hMenu=LoadMenu(hinstSHDOCLC,MAKEINTRESOURCE(24641));
hMenu=GetSubMenu(hMenu,dwID);
int num=GetMenuItemCount(hMenu);
UINT id;
for(int i=num-1;i>-1;i--)//删除所有其他菜单 {
id=GetMenuItemID(hMenu,i);
if(id==16 || id==15 || id==26 || id==31 || id==2270 || id==17) continue;//保留剪切,复制,粘贴,全选,图片另存为,删除
if(id>2379 && id<2387) break;//垂直滚动条:滚动至此,上,下,向上翻页,向下翻页,向上滚动,向下滚动
if(id>2386 && id<2393) break;//水平滚动条
DeleteMenu(hMenu, id, MF_BYCOMMAND);
}
if(GetMenuItemCount(hMenu)>0)
{
//显示快捷菜单
int iSelection = ::TrackPopupMenu(hMenu,TPM_LEFTALIGN | TPM_RIGHTBUTTON | TPM_RETURNCMD,
ppt->x,ppt->y,0,hwnd,(RECT*)NULL);
//发送选定的快捷菜单项目指令到外壳
LRESULT lr = ::SendMessage(hwnd, WM_COMMAND, iSelection, NULL);
}
FreeLibrary(hinstSHDOCLC);
return S_OK;
}
- 自定义浏览器控件中去除默认IE右键菜单中的垃圾项(如百度XXX搜索)
- 给IE浏览器增加自定义右键菜单
- 清除IE浏览器鼠标右键弹出菜单中的多余项
- 自定义ie右键菜单
- 自定义浏览器右键菜单
- c#中的右键菜单设置,如VB.net 中handles
- 在浏览器中添加自定义右键菜单c#
- 如何在IE右键菜单中添加菜单项
- 在IE右键菜单中添加菜单项
- 如何在IE右键菜单中添加菜单项
- 如何在IE右键菜单中添加菜单项
- 去除右键菜单中的Convert To PDF项
- 屏蔽IE浏览器鼠标右键菜单
- Duilib中为RichEdit\Edit控件添加自定义右键菜单
- Duilib中为RichEdit\Edit控件添加自定义右键菜单
- javascript自定义右键菜单并屏蔽默认右键菜单【原创】
- javascript自定义右键菜单并屏蔽默认右键菜单【原创】
- 实例解析自定义IE右键上下文菜单
- msxml3.dll 错误 '800c0005' 系统未找到指定的资源。
- CCTV访25岁千万富翁戴志康:写论坛起家
- Linux 内核的文件 Cache 管理机制介绍
- 无鼠标单键盘操作电脑
- 最新征途木马专杀工具-------------------------SMSS.exe
- 自定义浏览器控件中去除默认IE右键菜单中的垃圾项(如百度XXX搜索)
- 每天看一遍(值得深思)
- Unix常用监控和管理命令
- 读程序员人生有感
- JAVA学习之路:不走弯路,就是捷径
- 补上多级关联菜单的代码
- 市场与高校的缺口:嵌入式人才与培训
- property value with CGLIB 错误
- 权限管理设计方法