我试图得到一个非常简单的批处理脚本,当我的Windows 2008 Server(R2)系统启动时运行。 我已经通过运行gpedit.msc
将脚本添加到本地组策略中的“启动脚本”,并且在运行rsop.msc
,我看到了Windows Settings/Scripts (Startup/Shutdown)/Startup
时列出的脚本,但脚本没有被执行。 即使在重新启动之后, rsop
的“最后执行”列也是空的,并且不会创build应由脚本创build的文件。
目前,脚本的全部内容是:
rem Check if this script is running. date /t > c:\temp\flag
目标目录( c:\temp
)存在。 该脚本被称为c:\scripts\startup.bat
,并且如果我手动运行它可以正常工作。
你应该抓取一个psexec的副本并运行psexec -s path\to\script.bat
。 这将作为系统运行。 由于启动脚本以SYSTEM身份运行,因此这是比以login用户身份运行更为精确的手动testing。
检查registry项hklm \ software \ microsoft \ windows \ currentversion \ run
如果还没有,你可以在那里添加你的脚本
http://www.akadia.com/services/windows_registry.html
否则请检查文件夹的权限以确保系统帐户具有写权限
为了让我的工作(Windows Server 2012授予),我必须做到以下几点:
gpedit.msc
,进入计算机configuration> Windows设置>脚本,然后双击Startup
Show Files
并在popup的文件夹中粘贴一个快捷方式到我的脚本中 Add
然后selectBrowse
并select您的快捷方式。 OK
并重新启动。 捷径的粘贴是关键的一点。 浏览到脚本/启动文件夹以外的位置导致没有任何工作。