Перехват командных переключателей - PullRequest
0 голосов
/ 09 ноября 2010

Возможно ли в Windows перехватывать переключатели команд, передаваемые из одного приложения в другое?

Для пояснения, представьте, что у нас есть два двоичных файла: оболочка и основной исполняемый файл. Исполняемый файл запускается корректно только в том случае, если оболочка передает соответствующую команду вместе с выполнением (например, program.exe / start 12345).

1 Ответ

2 голосов
/ 09 ноября 2010

Если вы говорите о перехвате существующего приложения, вы можете просто заменить исполняемый файл своей оболочкой.Так, например, если вы хотите перехватить AcroRd32.exe, просто переименуйте его в MyAcroRd32.exe и напишите свой собственный AcroRd32.exe, который:

  • что-то делает с параметрами (сохраните их, измените ихраспечатайте их, ...);затем
  • вызовите MyAcroRd32.exe в качестве второго этапа (при условии, что вы хотите, основываясь на параметрах).

Если вы говорите о запрете запуска исполняемого файла, кроме как оберткойЯ также использовал метод, который вы предлагаете (в UNIX, но теория та же самая) - я заставил оболочку передать пароль суперсекрита ("deoxyribonucleic") в командной строке (или в среде), чтобы исполняемый файлничего бы не делал без этого.

Это не пуленепробиваемый, но вещи редко бывают.Обычно он блокирует всех, кроме самых решительных людей.

...