这个问题困扰我好几天了,终于解决了。。。
情景:我用C++的程序,在win10下编译出(MinGW gcc),得到exe文件。想要在python程序中调用一下,发现在cmd中可以正常运行的exe文件,在python程序中调用没有任何反应。
cmd_lst = [ r"xxx.exe", pick_path, output_root, img_name]
subp = subprocess.Popen(cmd_lst, shell=True,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE) # 调用exe程序
while subp.poll() is None:
line = subp.stdout.readline()
print(line)
if subp.poll() == 0: # 检查进程是否终止,如果终止返回 returncode,否则返回 None
print(subp.communicate()[1])
else:
print('---', subp.poll())
print("失败")
返回的是空,还有一串状态码。这一串数字实际就是状态码0x0000139,意思就是没有链接到库

然后在anaconda prompt中运行这个python文件,报错:

发现是opencv链接库的问题。
最终发现了这篇文章,问题得到解决啦!
参考链接:https://blog.csdn.net/diaolunlaoshi/article/details/117451891
博主在尝试使用Python调用C++编译的exe程序时遇到问题,exe在CMD中能正常运行,但在Python中无响应。经过排查,发现是由于opencv库的链接问题导致。在Anaconda Prompt中运行Python文件时,报出错误。通过阅读一篇博客文章(链接:https://blog.csdn.net/diaolunlaoshi/article/details/117451891),最终解决了这个问题。

6207

被折叠的 条评论
为什么被折叠?



