Batch file 试图在.bat中打开一个.vbs文件,但它需要一个程序来打开它
因此,我试图用.bat文件打开一个.vbs文件(vbs文件与bat文件位于同一文件夹中) 但是当我运行批处理时,当它试图打开reg.vbs时,我得到了这个消息 不允许我添加gyazo图像) 我不知道如何让它正确打开vbs文件尝试(输出将在控制台中) 或(输出将带有恼人的弹出窗口)Batch file 试图在.bat中打开一个.vbs文件,但它需要一个程序来打开它,batch-file,vbscript,Batch File,Vbscript,因此,我试图用.bat文件打开一个.vbs文件(vbs文件与bat文件位于同一文件夹中) 但是当我运行批处理时,当它试图打开reg.vbs时,我得到了这个消息 不允许我添加gyazo图像) 我不知道如何让它正确打开vbs文件尝试(输出将在控制台中) 或(输出将带有恼人的弹出窗口) 在运行命令之前,可以使用PUSHD切换到当前目录 PUSHD %~dp0 req.vbs POPD 检查%PATHEXT%系统环境变量:set PATHEXT命令应返回可识别的可执行文件扩展名列表,并应包含.VBS
在运行命令之前,可以使用
PUSHD
切换到当前目录
PUSHD %~dp0
req.vbs
POPD
检查
%PATHEXT%
系统环境变量:set PATHEXT
命令应返回可识别的可执行文件扩展名列表,并应包含.VBS
,例如:
==>set pathext
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
==>assoc .vbs
.vbs=VBSFile
==>ftype VBSFile
VBSFile="%SystemRoot%\System32\WScript.exe" "%1" %*
ftype VBSFile="%SystemRoot%\System32\WScript.exe" "%%1" %%*
assoc .vbs=VBSFile
使用和命令检查文件关联,如下所示:
==>set pathext
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
==>assoc .vbs
.vbs=VBSFile
==>ftype VBSFile
VBSFile="%SystemRoot%\System32\WScript.exe" "%1" %*
ftype VBSFile="%SystemRoot%\System32\WScript.exe" "%%1" %%*
assoc .vbs=VBSFile
在.vbs
文件类型和可执行程序之间切换(注意cmd
应作为管理员运行,操作顺序很重要):
或
如果您正在批处理脚本中使用上述命令,则在“%%1”
和%%*
中使用双百分号,如下所示:
==>set pathext
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
==>assoc .vbs
.vbs=VBSFile
==>ftype VBSFile
VBSFile="%SystemRoot%\System32\WScript.exe" "%1" %*
ftype VBSFile="%SystemRoot%\System32\WScript.exe" "%%1" %%*
assoc .vbs=VBSFile
或
启动/等待”cmd/c
不是必需的cscript.exe
本身工作正常。查看您的图像,我看到文件:Gage规格。Gage
名称来自何处?仅供参考:在我的操作系统中,会出现另一个openwith
对话框,因此我无法令人满意地再现您的问题。我在start%~dp0 req.vbs
中看到%dp0
和req.vbs
之间有一个空格。尝试start%~dp0req.vbs
或start”““%~dp0req.vbs”
你能打开vbs文件吗?我几乎听不懂你刚才说的一个词:-)这对我有效,除了你把文件reQ改成了实际的文件reG,所以我不得不稍微修改一下你的代码。谢谢