再会。
我有一个启动外部应用程序的程序。该外部应用程序上有一个右键单击子菜单,我需要禁用它。是否可以(不修改外部应用程序)禁用右键单击?也许权限或组策略等。
谢谢。
再会。
我有一个启动外部应用程序的程序。该外部应用程序上有一个右键单击子菜单,我需要禁用它。是否可以(不修改外部应用程序)禁用右键单击?也许权限或组策略等。
谢谢。
我不确定我是否想发帖,因为我在这件事上没有很大的范围,但这绝对是可能的。如果你有一个应用程序的句柄(如果没有,你可以得到一个),你可以使用它来禁用应用程序中的右键单击。
http://www.codeguru.com/forum/showthread.php?t=190440
http://support.microsoft.com/kb/318804
似乎是最有用的链接,它只是关于你应该如何挂钩然后忽略WM_RBUTTONDOWN
和WM_RBUTTONUP
.
稍后我会尝试用一个例子写出更好的东西。
更多链接/编辑
此链接可能很有用,因为它解释了您将需要使用非托管 c/c++ 来使用 setWindowsHookEx 进行挂钩。
http://social.msdn.microsoft.com/Forums/en-US/clr/thread/8dd657b5-647b-443b-822d-ebe03ca4033c/
希望这可以帮助
[编辑]
我认为这实际上可以完全在 C# 应用程序中完成。今晚我会发布解决方案
[/编辑]
这是一个 win32 api 常见问题解答。
见 news://194.177.96.26/comp.os.ms-windows.programmer.win32 经常讨论的地方
我知道 Windows 的残酷解决方案。钩住鼠标并过滤所有消息,转到外部程序窗口。虽然它可以减慢整个系统的速度。
没那么复杂。这是一个教程:http: //win32assembly.online.fr/tut24.html 别介意汇编程序,它在任何语言中的工作方式都是一样的。
<script type="text/javascript">
$(function () {
$(document).bind("contextmenu", function (e) {
e.preventDefault();
});
});
</script>
在脚本中使用此代码禁用右键单击