0

我已经使用了与此类似的各种帖子并提出了以下内容,但不确定为什么这对我不起作用。我有一个用户窗体,我试图在其中运行脚本并捕获输出,包括任何错误。但是,一旦我运行此代码,控制台窗口就会迅速消失:

Sub test()
    Dim wsh As Object
    Set wsh = VBA.CreateObject("WScript.Shell")
    Dim waitOnReturn As Boolean: waitOnReturn = True
    Dim windowStyle As Integer: windowStyle = 1

command = "python ""C:\test1.py --arg1=ABC"" > ""C:\logs\test.log"""
wsh.Run command, windowStyle, waitOnReturn

End Sub

在我添加重定向('>')之前,脚本本身运行得很好。我的 python 脚本需要在命令中以“python”关键字启动,如上所示,所以我不能使用“cmd /c”。是否可以在不使用 'cmd /c' 和使用 wsh.Run(最好)而不是 wsh.Exec 的情况下捕获输出?

谢谢。

4

0 回答 0