【问题标题】:VBS script to run a batch file, not running at start-up [duplicate]VBS脚本运行批处理文件,不在启动时运行[重复]
【发布时间】:2020-11-17 07:23:07
【问题描述】:
我已经通过单击运行它并以管理员身份运行,它可以正常工作。
当我把它放在一个快捷方式中,配置为以管理员身份运行时,它不会在启动时启动。
这是我的 VBS 脚本:
Set objshell = wscript.createobject("wscript.shell")
objshell.run("C:\ERPSystem\znc\backup\bat\callbackupdb.bat"),0, true
我认为它具有操作系统中的权限,因为它在其他计算机上正常工作。
【问题讨论】:
标签:
batch-file
vbscript
windows-10
【解决方案1】:
你可以试试这样的 vbscript :
Option Explicit
Dim PathApplication,ShortcutName,VbsPath
VbsPath = Wscript.ScriptFullName
PathApplication = "C:\ERPSystem\znc\backup\bat\callbackupdb.bat"
ShortcutName = "Backupdb"
Call Shortcut(VbsPath,ShortcutName)
Call Hidden_Run(Dblquote(PathApplication))
'----------------------------------------------------------------------------------------
Sub Shortcut(PathApplication,ShortcutName)
Dim objShell,StartFolder,objShortCut,MyTab
Set objShell = CreateObject("WScript.Shell")
MyTab = Split(PathApplication,"\")
If ShortcutName = "" Then
ShortcutName = MyTab(UBound(MyTab))
End if
StartFolder = objShell.SpecialFolders("Startup")
Set objShortCut = objShell.CreateShortcut(StartFolder & "\" & ShortcutName & ".lnk")
objShortCut.TargetPath = Dblquote(PathApplication)
ObjShortCut.IconLocation = "%SystemRoot%\system32\SHELL32.dll,-25"
objShortCut.Save
End Sub
'----------------------------------------------------------------------------------------
Function DblQuote(Str)
DblQuote = Chr(34) & Str & Chr(34)
End Function
'----------------------------------------------------------------------------------------
Function Hidden_Run(MyProgram)
Dim ws,Result
Set ws = CreateObject("wscript.Shell")
Result = ws.run(MyProgram,0,True) '0 to hide the program
Hidden_Run = Result
End Function
'----------------------------------------------------------------------------------------
【解决方案2】:
如果它在其他计算机上正常工作那么问题出在你的操作系统你可以尝试通过将文件放在同一目录中或以管理员身份运行脚本我已经尝试过你的脚本它在我的笔记本电脑上运行良好(只是更改了批处理文件)