Я не использую windows7 (возможно, вы получите чек на бета-версии в ближайшее время), но я думаю, что правильное место всегда будет лучше взято из реестра из-за локализации Windows-версий. Моя собственная версия C: \ ProgramData \ Microsoft \ Windows \ Start Menu \ Programs \ Startup здесь больше похожа на "C: \ Documents and Settings \ All Users \ Menu Démarrer \ Programs \ Démarrage" (с XP, из курс)
-10 для программистов, использующих жестко закодированные имена каталогов (да, некоторые установщики будут создавать каталоги на английском/разных языках при установке).
-1 для имен каталогов Microsoft локализации ...
В любом случае здесь является snipet для этого, действительно для XP, по крайней мере:
commonstartup.cmd
@echo off
for /F "tokens=3 delims= " %%k in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Common Startup"^| findstr /i /c:"Common Startup"') do set StartUp=%%k
echo StartUp="%StartUp%"
___Notes_____
1: Поскольку reg.exe из Windows2000 и XP имеют разные аргументы команды, возможно, W7 изменился на o поэтому проверьте его до и забудьте.
2: Чтобы получить список всех системных каталогов, введите команду: рег запрос "HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer \ Shell Folders" и читать строки. Возможно, вы захотите изменить «Общий запуск» на что-то еще, если с W7 все изменилось.
3: Существует также персональный/пользовательский список в пределах HKEY_CURRENT_USER, если вы хотите, чтобы это использовалось только для некоторых пользователей.
Вы можете создать задачу в планировщик задач при добавлении файлов на действия, которые вызывают при запуске – Jaider