从Python运行一个可执行文件“这个应用程序请求运行时以一种不寻常的方式终止它。”

2024-03-28 18:40:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我遇到了一个有趣的问题,我无法确定这是我的代码问题还是我正在运行的可执行文件问题。基本上我有一个Python程序,需要调用一个外部可执行文件来处理一些数据。如果我通过PowerShell或cmd调用可执行文件,它可以正常工作。但是,如果尝试通过os.system()subprocess.run()运行可执行文件,则会出现以下错误:

This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information.

从我对Google问题的理解来看,这是一个C++相关的问题,它是我正在运行的.exe语言。我重新安装了最新的VisualC++ + ReDIST,这似乎没有影响到这个问题。我还尝试创建运行.exe的.bat和.ps1脚本。它们都可以通过PowerShell和CMD正常运行,但是在通过os.system()subprocess.run()运行时会产生相同的错误。这个错误消息很难描述,所以我想知道是否有人知道它,以及为什么os.system()等可能会抛出它。你知道吗

相关代码很简单

os.system("GaussBin.exe gaussInput.txt gaussOutput.txt")

当字符串粘贴到cmd中时,它运行得非常好。此外,如果system()调用的参数不正确,exe会正确显示usage函数。只有当我加上输出.txt程序应该在事情开始破裂时完全运行。你知道吗

我对os.system在哪个目录下运行有些困惑。调用exe时是否应该使用.\?你知道吗

.exe文件是提供的,不是由我生成的。你知道吗


Tags: the数据run代码程序txtcmd可执行文件