Предотвратить запуск некоторых программ автозагрузки при входе в Windows Vista через удаленный рабочий стол

Предотвратить запуск некоторых программ автозагрузки при входе в Windows Vista через удаленный рабочий стол

Можно ли запретить запуск некоторых программ автозагрузки при входе в систему Windows Vista через Remote Dekstop?

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

К приложениям, которые я хотел бы отключить при запуске, относятся мой клиент обмена мгновенными сообщениями (в данном случае Digsby), боковая панель Windows, Samurize и UltraMon для работы с несколькими мониторами.

решение1

Конечно. Создайте пакетный файл, содержащий команды для запуска программ "Console Only". В верхней части этого файла проверьте переменную SESSIONNAME. Если она равна "Console", запустите эти программы. Если нет, не делайте этого.

Так:

@echo off

IF %SESSIONNAME% == Console (

echo In console, executing programs.
REM List paths to programs here prefaced by "start " so they run async.

GOTO :END
) ELSE (
REM Not in console, not executing programs.
)

:END

решение2

Альтернативное решение (только если вы знакомы с командной строкой CLI) Adv: меньшее использование блоков файловой системы, особенно во встроенных системах/в ограниченном пространстве.

Если ваша ОС поддерживает только файлы жестких ссылок (XP/NT5 или старше), то ее ограничения также будут применяться (exe и его ссылка не могут находиться на другом томе/диске и т. д.)

  1. Откройте командную строку priv/elevated/as admin.

  2. Создайте символическую/жесткую ссылку на исходный filename.exe (используйте fsutil или сторонние инструменты ln): scpath\Console_filename.exe

  3. Если вы делаете это из сеанса RDP, вам нужно обойти редактор LNK/prop проводника, создав tmp/dummy/blank/link с именем %SessionName%_filename.exe в той же папке (scpath). Примечание: %SessionName% как литеральная строка будет использоваться cmd, если она не определена.

  4. Запустите explorer.exe из того же терминала, отредактируйте ярлык/PIF/LNK и измените Target с "progpath\filename.exe" на "scpath\%SessionName%_filename.exe". scpath может отличаться или совпадать с путем filename.exe.

  5. Удалите %SessionName%_filename.exe (если вы выполнили шаг №3) и выйдите из терминала.

Символические ссылки более гибкие, поскольку ярлык может указывать на относительный путь и не обязательно должен находиться на том же томе/диске, что и progpath.

Кстати. Монтирование раздела/тома в C: без буквы диска не преодолеет ограничение жесткой ссылки (должно быть в той же NTFS).

Связанный контент