0

現在のディレクトリで、特定のファイルの種類ごとに (各 .txt ファイルの例として) 次のコマンド ラインを実行しようとしています。

"C:\Program Files (x86)\some program\someprogram.exe" "file.txt" "file.txt.mod" -someparameter

開いている Windows コマンド プロンプト (すべての引用符を含む) からこの正確なコマンドを実行すると、機能します。しかし、この VB で実行すると、何もしないか、すぐに閉じます。

私は何を間違っていますか?引用符に関係しているように感じますが、頭では整理できません。

Set objFSO = CreateObject("Scripting.FileSystemObject") 
objStartFolder = left(WScript.ScriptFullName,(Len(WScript.ScriptFullName))-(len(WScript.ScriptName)))
Set objFolder = objFSO.GetFolder(objStartFolder)
Set colFiles = objFolder.Files

For Each objFile in colFiles 
    strFileName = objFile.Name
    If objFSO.GetExtensionName(strFileName) = "txt" Then
        RunCommand()
    End If
Next

Sub RunCommand
    Set oShell = WScript.CreateObject ("WScript.Shell")
    oShell.run "cmd.exe /C ""C:\Program Files (x86)\some program\someprogram.exe"" """ & objFile.Path & """ """ & objFile.Path & ".mod"" -someparameter"
    Set oShell = Nothing
End Sub
4

1 に答える 1