是否存在用于禁用第三方应用程序中弹出菜单项的黑客,例如视觉工作室?

问题描述

| 这个问题的动机是我对Visual Studio gui的不满意,但是可能会有更广泛的含义。 假设我右键单击当前文档的“文件名”选项卡。将为我提供一个弹出菜单,其中包含一些可能有用的选项,例如关闭此文档,以及一些潜在的有害概念,例如关闭所有文档。如果我不小心单击了错误的鼠标,则必须撤消损坏,这会很烦人。 好吧,据我所知,我不能指望Microsoft(更不用说较小的公司)为每个菜单添加自定义了。但是,也许有Windows黑客可以让我禁用此类菜单项和用户界面的其他元素?假设可以用其唯一的名称来检测“除此以外的所有内容”,因此,如果底层组件可以以某种方式被黑客入侵,则在显示此类文本时,可能总是将其禁用,除非用户跳过障碍以消除限制。 那么这些东西如何工作?我们在多大程度上可以破坏第三方Windows应用程序的用户界面?可以做什么不能做什么?     

解决方法

  好吧,我知道我不能   期待微软(更不用说   较小的公司)添加   为每个人定制   菜单项 好吧,他们做到了。无论如何,就像在Microsoft中一样,它们在设计良好的UI(例如Visual Studio中的UI)中很常见。您可以使用“工具+定制”,“命令”选项卡,“上下文”菜单单选按钮,“其他上下文菜单| Easy MDI文档窗口”。删除/添加您不喜欢的内容。 单击一下,看看您能做什么。不要担心菜单。 如果不存在该功能,则如果菜单存储为本地资源,则有可能破解菜单。 File + Open + File,选择.exe并浏览Menu节点。这些天来不再使用本机菜单。麻烦的机会也很多。使用SetWindowsHookEx()设置的挂钩对程序进行黑客攻击是另一种长距离射击。     ,Visual Studio(您没有说哪个版本)确实具有可扩展性SDK以及加载加载项和扩展的功能,这可以让您做到这一点。     ,我正在向您提供我编写的代码,以从MDI子窗体禁用MDI父级的任何上下文菜单。 这是一段疯狂的代码,但效果很好。 这是子窗体:
private void Form2_Load(object sender,EventArgs e)
{
    MDI.MDIParent1.ActiveForm.MainMenuStrip.Items[0].ToolTipText = \"Disable\";
}
这是MID父代码: 定时器间隔为1000毫秒,并在
MDIParent1_Load
上启用。
fileMenu
是MDI父级中的菜单条,
aboutToolStripMenuItem
是MDI父级中的上下文菜单。
private void timer1_Tick(object sender,EventArgs e)
{
    if (fileMenu.ToolTipText == \"Disable\")
    {
        aboutToolStripMenuItem.Enabled = false;
    }
}