python调用外部程序导致[错误193]%1不是有效的Win32应用程序

ccw*_*te1 10 python windows

我正在编写一个GUI前端,在它执行一堆验证后将执行一系列已经存在的vbscript .wsf文件.

我的问题是,当我尝试执行.wsf文件时,我收到错误

WindowsError:  [Error 193] %1 is not a valid Win32 application
Run Code Online (Sandbox Code Playgroud)

从命令行运行它们工作正常

d:\<some path>\<some file>.wsf
Run Code Online (Sandbox Code Playgroud)

我已经尝试了几个不同的选项,调用,os.system等.但都导致相同的Win32错误.

call("d:\<some path>\<some file>.wsf")
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

小智 18

你是否安装了64位版本的Python?

当我尝试对运行Python 2.7(64位)的(32位)DLL执行ctype调用时,我遇到了同样的错误.当我改为32位版本的Python时,错误消失了,事情就开始了!也许你有同样的问题?

我想在Win64中,64位进程必须全部是64位:)


the*_*ill 5

正如警告所说,file.wsf不是一个应用程序.它是一个通过作为参数传递给脚本引擎而运行的脚本.您可能需要调用脚本处理程序.我不知道处理程序应用程序是什么,但让我们假设它是cscript.exe.您应该调整call()运行它并将wsf文件作为参数传递.