1 vb.net windows visual-studio-2008 windows-7
我正在尝试在VB.Net中创建一个软件作为我的uni项目来禁用Windows 7 pc中的以下内容.我认为必须从Windows注册表的上下文菜单中禁用它们,但不是禁用整个上下文菜单,我想单独禁用以下内容.
我想让用户通过复选框选择性地/单独禁用它们,以便在鼠标右键单击时禁用这些选项.
我的问题是我不知道哪个是正确的密钥禁用,因为注册表是如此巨大和一些键类似命名.
任何人都可以帮我说一下Windows注册表中上述右键单击功能的确切关键位置或者如何解决这个问题?
在这个问题中做出的假设的深层缺陷是上下文菜单由注册表项配置.它不是.Windows允许通过发送WM_CONTEXTMENU消息来修改窗口的上下文菜单.代码,不配置.如果您对该消息的默认实现不满意,那么您继承窗口过程并为该消息提供自己的消息处理程序,以便您可以显示自己的上下文菜单.这是Windows工作方式的核心.
修改您未编写的程序的上下文菜单也是可能的,但更复杂.您使用SetWindowsHookEx()将DLL注入另一个进程.你不能在VB.NET中编写类似的DLL,它需要本机代码.因为该进程不会加载CLR来运行托管代码.
| 归档时间: |
|
| 查看次数: |
2299 次 |
| 最近记录: |