Добрый день.
У меня есть программа, которая запускает внешнее приложение. В этом внешнем приложении есть подменю, вызываемое правой кнопкой мыши, которое мне нужно отключить. Можно ли (без изменения внешнего приложения) отключить правый щелчок? Может быть, разрешения или групповые политики и т. д.
Спасибо.
Вау, похоже, это возможно. Я хотел бы увидеть решение, опубликованное здесь, когда вы его решите :)





Я не был уверен, что хочу опубликовать, поскольку у меня нет большого объема информации по этому вопросу, но это определенно возможно. Если у вас есть дескриптор приложения (если нет, вы можете его получить), вы можете использовать его, чтобы отключить щелчок правой кнопкой мыши в приложении.
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#. Я опубликую решение сегодня вечером
[/РЕДАКТИРОВАТЬ]
Большое спасибо! Еще не пробовал, но скоро попробую. Если вы приведете пример на C#, это будет здорово, но не беспокойтесь слишком сильно.
Раньше я ничего не делал на C#, так что это будет, мягко говоря, непросто :)
Хорошо, без проблем, попробую разобраться сам. Спасибо, в любом случае :)
Это FAQ по win32 api.
см. новости: //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>
Используйте этот код в скрипте, чтобы отключить щелчок правой кнопкой мыши
Какое приложение запускаете? Сомневаюсь, что это возможно ... но могу ошибаться.