
Можно ли запретить запуск некоторых программ автозагрузки при входе в систему 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 и его ссылка не могут находиться на другом томе/диске и т. д.)
Откройте командную строку priv/elevated/as admin.
Создайте символическую/жесткую ссылку на исходный filename.exe (используйте fsutil или сторонние инструменты ln): scpath\Console_filename.exe
Если вы делаете это из сеанса RDP, вам нужно обойти редактор LNK/prop проводника, создав tmp/dummy/blank/link с именем %SessionName%_filename.exe в той же папке (scpath). Примечание: %SessionName% как литеральная строка будет использоваться cmd, если она не определена.
Запустите explorer.exe из того же терминала, отредактируйте ярлык/PIF/LNK и измените Target с "progpath\filename.exe" на "scpath\%SessionName%_filename.exe". scpath может отличаться или совпадать с путем filename.exe.
Удалите %SessionName%_filename.exe (если вы выполнили шаг №3) и выйдите из терминала.
Символические ссылки более гибкие, поскольку ярлык может указывать на относительный путь и не обязательно должен находиться на том же томе/диске, что и progpath.
Кстати. Монтирование раздела/тома в C: без буквы диска не преодолеет ограничение жесткой ссылки (должно быть в той же NTFS).