【发布时间】:2011-08-20 13:28:32
【问题描述】:
我正在编写一个脚本,该脚本将在本地管理员帐户下作为计划任务运行。脚本的核心如下:
'Calculate date time
dtm = Now
ymd = (Year(dtm)*10000) + (Month(dtm)*100) + Day(dtm)
hms = (Hour(dtm)*10000) + (Minute(dtm)*100) + Second(dtm)
dString = ymd & "_" & hms
Set Wso = CreateObject("WScript.Shell")
'Write random string to text file for reference by incremental script
Const ForWriting = 2
Set objFile = Fso.OpenTextFile("e:\backups\dString.txt", ForWriting, True)
objFile.WriteLine(dString)
objFile.Close
'Append random string to make full backup name unique'
'Execute full backup creation'
'PROBLEM: Below line will only execute under my domain account
Wso.Run("trueimagecmd /create /filename:""e:\backups\autoBackup_" & dString &"_.tib"" /compression:5 /incremental /partition:""C""")
上面的 sn-p 将在我的域帐户下正常运行,但会在上面指示的行上出错,并显示以下内容:
The system cannot find the file specified
Code: 80070002
Source (null)
当我在我的帐户下运行它时不会出现此错误。我对运行“Wscript.Shell”实例所需的权限不够熟悉。任何见解都值得赞赏。
更新:
trueImagecmd 是 Acronis 恢复软件的命令行版本。我使用这个脚本作为自动化部署过程的一种方式。该命令很好,我可以以自己的身份运行此脚本,但在本地管理员帐户下运行时,脚本执行到指定的点,运行命令抛出错误。
更新 2:
看起来包含完整路径解决了问题。谢谢大家的建议。
【问题讨论】:
-
trueimagecmd是什么?该应用程序在其他用户帐户下运行时是否可用?它需要管理权限吗? -
E:是网络驱动器吗?如果是这样,它可能没有映射到不工作的帐户。