3

我正在尝试运行使用 VBS 隐藏的批处理文件。我已经搜索了高低,但无论我做什么,我都无法让我的工作:(

这是我的代码:

If WScript.Arguments.Item(2) = "TV" Then
Set WShShell = WScript.CreateObject("WScript.Shell")
WShShell.Run "extractscipt.bat " & chr(34) & WScript.Arguments.Item(0) & chr(34) & " " & chr(34) & WScript.Arguments.Item(1) & chr(34) & " " & chr(34) & WScript.Arguments.Item(2) & chr(34), 0
    Set WShShell = Nothing
End If

我不断收到的错误是“找不到文件”。

我的 bat 文件本身可以完美运行,我只是使用这个 VB 脚本来隐藏命令窗口。我包括的两个论点是路径,所以我需要引用它们:) 我希望你能帮助我。

这是我的 extractscript.bat 文件的内容:

set fromdir=%1
set name=%2
set label=%3
set todir=F:\%name%

if %label%==EXTRACT (
if not exist %todir% mkdir %todir%
"C:\Program Files\7-Zip\7z.exe" x "%fromdir%\*.rar" -o"%todir%"
exit
)
exit

如果您对如何将这两个文件合并到一个隐藏程序中也有任何想法;)


编辑/更新

所以事实证明我需要添加完整路径,并且我在我的代码中也发现了一些错误。我不必添加 chr(34) ( " ),这只会把它搞砸:) 这是我正在使用的工作代码,以防有人也需要这个答案:)

If WScript.Arguments.Item(2) = "TV" Then
    Set WShShell = WScript.CreateObject("WScript.Shell")
    WShShell.Run """C:\Program Files (x86)\uTorrent\extractscript.bat"" "& WScript.Arguments.Item(0) & " " & WScript.Arguments.Item(1) & " " & WScript.Arguments.Item(2), 0
    Set WShShell = Nothing
End If
4

0 回答 0