1

Image Execution Options (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options) с ключом, названным в честь исполняемого файла, и значением строки (REG_SZ), как известно, являются хорошим прообразом, если вам нужно изменить поведение приложение для запуска.

Однако, если у меня есть очень распространенное имя для исполняемого файла, например, launcher.exe , как я могу быть более конкретным? Могу ли я вообще?

Я хотел бы убедиться, что будет затронут только тот конкретный двоичный файл, который я имею в виду, хотя в моем конкретном случае это будет лишь умеренное влияние, если я не смогу ограничить его точным исполняемым файлом.

Я хотел бы написать себе небольшую программу-обертку, которая, подобно Process Explorer от Sysinternals, заменяет стандартное поведение моего конкретного файла launcher.exe тем, что оно устанавливает переменную среды, аналогичную set __COMPAT_LAYER=RUNASINVOKER в оболочке.

Теперь я знаю, как написать обертку и все, главный вопрос в том, есть ли способ указать в реестре, используя некоторую магию под Image Execution Options , ограничить область действия значения "hack" Debugger или я бы отфильтровать это в моей обертке?


Имеет отношение к:

2 ответа2

3

Начиная с Windows 7, есть способ ограничить параметры выполнения файла изображения точным путем.

  1. Создайте слово с именем "UseFilter" и ненулевым значением под ...\ Параметры выполнения файла изображения \ filename.exe.
  2. Создайте подключ с произвольным именем, например ...\ Параметры выполнения файла изображения \ filename.exe \ MyFilter.
  3. Под этим подразделом создайте строку с именем "FilterFullPath" и полным путем в качестве значения, например «C:\ mypath \ filename.exe». Кроме того, создайте все необходимые параметры, "Отладчик" в вашем случае, там.

Теперь, когда система запускает «filename.exe», она проверяет, соответствует ли полный путь "FilterFullPath" из любого подраздела. (Может быть несколько подключей для разных путей.) Если есть совпадение, используются параметры из подобранного подраздела. В противном случае, как обычно, используются параметры из базового ключа IFEO\filename.exe.

0

Кажется, можно сделать это так

На снимке экрана показано, что для создания подразделов, соответствующих полному пути двоичного файла под HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options , например:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\C:\Program Files\Adobe\Reader 11.0\Reader\AcroRd32.exe

в соответствии с которым затем может быть создано и установлено значение строки Debugger .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .