为什么我的Python脚本适用于Window Script Host Run方法,但NOT Exec方法

问题描述 投票:0回答:1

我有一个简单的Python脚本(“hi.py”),如下所示

import time

print("HI")
time.sleep(5)

我使用Excel VBA通​​过Windows Script Host's Run Method调用“”hi.py“(代码如下)。它有效。

sub testRun()
    Dim wsh As Object
    Dim a As Variant

    Set wsh = CreateObject("WScript.Shell")
    a = wsh.run("C:\tmpFolder\pyProject\myProject\hi.py", 1, True)
End Sub

但如果我使用Windows Script Host's Exec Method而不是Run Method,我的电脑会说hi.py is not a valid win 32 application

Sub testExec()
    Dim wsh As Object, oexec As Object

    Set wsh = CreateObject("WScript.Shell")
    Set oexec = wsh.exec("C:\tmpFolder\pyProject\myProject\hi.py")
End Sub

如何用Windows Script Host Exec Method运行我的python脚本?非常感谢你。

python vba shell windows-scripting
1个回答
0
投票

方法exec()需要一个可以传递给命令行的String。尝试python C:\tmpFolder\pyProject\myProject\hi.pypython3 C:\tmpFolder\pyProject\myProject\hi.py,就像你在CMD.exe中输入一样

Link to the Syntax at MSDN

© www.soinside.com 2019 - 2024. All rights reserved.