• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > 如何屏蔽ie菜单中的查看-->源文件项?

如何屏蔽ie菜单中的查看-->源文件项?

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了ie菜单在哪,ie菜单变成英文,ie菜单,ie菜单栏在哪,ie浏览器菜单栏在哪等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 如何屏蔽ie菜单中的查看-->源文件项?
描述:

最近做了一个active,其中的一个功能是屏蔽ie中的“查看”菜单中的“源文件项”。还要屏蔽右键菜单中的“查看源文件”或是整个屏蔽右键菜单。
请各位高手不吝赐教:p


解决方案1:

正好手里有M$手里抠出的一段代码
==
HRESULT CClientView::OnShowContextMenu(DWORD dwID, LPPOINT ppt, LPUNKNOWN pcmdTarget, LPDISPATCH pdispObject)
{
#define IDR_BROWSE_CONTEXT_MENU 24641
#define IDR_FORM_CONTEXT_MENU 24640
#define SHDVID_GETMIMECSETMENU 27
#define SHDVID_ADDMENUEXTENSIONS 53
HRESULT hr;
HINSTANCE hinstSHDOCLC;
HWND hwnd;
HMENU hMenu;
CComPtr<IOleCommandTarget> spCT;
CComPtr<IOleWindow> spWnd;
MENUITEMINFO mii={0};
CComVariant var, var1, var2;
hr = pcmdTarget->QueryInterface(IID_IOleCommandTarget, (void**)&spCT);
hr = pcmdTarget->QueryInterface(IID_IOleWindow, (void**)&spWnd);
hr = spWnd->GetWindow(&hwnd);
hinstSHDOCLC = LoadLibrary(TEXT("SHDOCLC.DLL"));
if (hinstSHDOCLC == NULL)
{
// 载入模块错误 -- 尽可能安全地失败
return S_FALSE;
}
hMenu=LoadMenu(hinstSHDOCLC, MAKEINTRESOURCE(IDR_BROWSE_CONTEXT_MENU));
hMenu=GetSubMenu(hMenu,dwID);
//获得语言子菜单
hr = spCT->Exec(&CGID_ShellDocView, SHDVID_GETMIMECSETMENU, 0, NULL, &var);
mii.cbSize = sizeof(mii);
mii.fMask = MIIM_SUBMENU;
mii.hSubMenu = (HMENU) var.byref;
//加入语言子菜单到编码上下文菜单
SetMenuItemInfo(hMenu, IDM_LANGUAGE, FALSE, &mii);
//插入来自注册表的快捷菜单扩展
V_VT(&var1) = VT_INT_PTR;
V_BYREF(&var1) = hMenu;
V_VT(&var2) = VT_I4;
V_I4(&var2) = dwID;
hr = spCT->Exec(&CGID_ShellDocView, SHDVID_ADDMENUEXTENSIONS, 0, &var1, &var2);
//删除查看源代码
DeleteMenu(hMenu, IDM_VIEWSOURCE, MF_BYCOMMAND);
//显示快捷菜单
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;
}

解决方案2:

估计需要 抓 ie 的窗口, 得到hmenu, 设置menuinfo
回复人: jiangsheng(蒋晟.MSMVP2004Jan) ( ) 信誉:253 
提供的方法,可能只能定制右键菜单

解决方案3:

http://dev.csdn.net/article/19/19627.shtm


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 关于通过IE菜单命令实现打印控件内容的问题
  • IE中显示并响应自定义菜单
  • 如何屏蔽ie菜单中的查看-->源文件项?

相关文章

  • 2017-06-05 ATLVC++MFC如何制作工程模板
  • 2017-06-04 关于VC读取WORD文档的页眉页脚问题
  • 2017-06-05 写了ocx控件在网页中调用显示对象不支持此属性或方法
  • 2017-06-04 开个贴子,大家进来探讨一下初学ATL,编写COM时的一些问题,我会有一些疑问,我不懂,就提出来
  • 2017-06-05 多线程读写的问题!!
  • 2017-06-04 directshow连接不过
  • 2017-06-05 请教用vc做成exe调用vb做成的dll的方法
  • 2017-06-04 请教DCOM的一些问题,有兴趣高手的请加我QQ:438850078
  • 2017-06-05 求助windows2000下(硬件)驱动程序或DLL的制作?也可以不要分,货币交易
  • 2017-06-04 请教COM+在internet上远程访问的问题

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 为何VB使用MFCActiveX控件,在属性栏改变属性不起作用
    • 关于核心编程之动态库
    • 每5000次的读数据库循环,我是用1个线程去读,还是分配到多个线程例如5个线程去读,获得数据的整体效率那个高?
    • 已知一个dll文件包含了一些窗体,如何调用这些窗体?
    • DLL的输出问题
    • 请问在MSMQ应用中服务器一定要域控制器吗?在客户端能否使用IP地址配置PATH?
    • 为什么线程只能执行一次?
    • 请大家介绍一本写ActiveX的好书
    • 关于视频聊天插件,请各位大牛帮帮忙!!
    • CComQIPtr的问题

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有