使用pyinstaller打包python程序,使用-w参数,去掉console,发现执行命令行的subprocess相关语句报“[ERROR] [WinError 6] 句柄无效”的错误。

去掉-w参数,将console显示的话,就正常。

我原本的语句是:

#用 subprocess.check_output获取adb devices命令运行的输出

deviceInfo = subprocess.check_output('adb devices').decode().split("\r\n")

这里需要获得命令的运行输出,试了好多方案,最终可行的方案是用subpross.Popen来替代subprocess.check_output,Popen函数加入如下参数:shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE

Popen方法执行命令,父进程不会等待子进程。这个时候需要用wait()方法来等待运行的结果。

这里用自己写的subprocess_check_output来替代subprocess.check_output 代码如下:

def subprocess_check_output(*args):

p = subprocess.Popen(*args,shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

msg = ''

for line in p.stdout.readlines():

msg += line.decode()

status = p.wait()

return msg

deviceInfo = subprocess_check_output('adb devices').split("\r\n")

这样就解决了这个问题。

python句柄无效_使用pyinstaller打包,subprocess报“句柄无效”错误的解决方法相关推荐

  1. c++中调用python脚本提示 error LNK2001: 无法解析的外部符号 __imp_Py_Initialize等错误的解决方法

    c++中调用python脚本提示 error LNK2001: 无法解析的外部符号 __imp_Py_Initialize等错误的解决方法 时间:2017-05-09 12:32:06阅读:234评论 ...

  2. pyinstaller打包后读不到配置文件的解决方法

    2019独角兽企业重金招聘Python工程师标准>>> pyinstaller打包好一个exe后,运行此exe,会把此文件解压缩到 C:\Users\xxxx\AppData\Loc ...

  3. 关于python在64位机器上打包32位exe(兼容xp系统)解决方法

    python在64位机器上打包32位exe 1.下载32位python 3.4.4及以下版本支持xp,32位3.4.4下载地址https://www.python.org/ftp/python/3.4 ...

  4. Pyinstaller打包的exe文件过大的解决方法

    Pyinstaller打包的exe文件过大怎么办? 相信经常用python的朋友都会面临这么一个问题,那就是想把自己写好的python程序打包给别人使用.有的人就会问了"打包"是什 ...

  5. 我的世界手机版java安装失败_我的世界中国版JAVA路径错误的解决方法分享

    我的世界中国版JAVA路径错误该怎么解决呢?JAVA是Minecraft运行的虚拟环境必要条件,需要您安装后才开始游戏.很多童鞋在安装过程中都遇到了JAVA路径错误的提示,这是什么原因导致的?九游必须 ...

  6. Incorrect string value utf8bm4 依然报错_英雄联盟手游报错出现LoginTimeOut 10010解决方法 lol手游公测43个英雄介绍_游戏频道...

    英雄联盟手游中经常会出现LoginTimeOut的报错,那么到底是什么意思呢?要怎么解决呢?希望下面这篇Login Time Out解决方法能帮到大家. 1.很多玩家都报错出现这个问题,这很可能是游戏 ...

  7. Python+pyqt+dicom+vtk 使用pyinstaller打包软件时正常,运行报错vtkmodules.all、pydicom.encoders.pylibjpeg等错误

    ** Python+pyqt+dicom+vtk 使用pyinstaller打包软件时正常,运行时报vtkmodules.all.pydicom.encoders.pylibjpeg.No modul ...

  8. Pyinstaller打包附带DLL、图标和压缩EXE方法

    Pyinstaller打包附带DLL.图标和压缩EXE方法   转载: https://blog.csdn.net/xinyingzai/article/details/80282856 目的: 用P ...

  9. Pyinstaller 打包exe 报错 “failed to execute script XXX“的一种解决方案

    Pyinstaller 打包exe 报错 "failed to execute script XXX"的一种解决方案 参考文章: (1)Pyinstaller 打包exe 报错 & ...

  10. pyinstaller打包icon报错

    pyinstaller打包icon报错 用pyinstaller打包exe文件时,是可以设置图标的,但如果没有设置好,就会报错. 我在打包的时候报了一个错 except win32api.error ...

最新文章

  1. leaflet地图框架
  2. 官宣!这些北京高校,正式进军雄安!
  3. 六轴机器人 宝元系统_庆云大国重器上线六轴智能焊接机器人,锻造高质量发展硬核...
  4. BERT, ELMo, GPT-2: 这些上下文相关的表示到底有多上下文化?
  5. jdbc之连接Oracle的基本步骤
  6. 【转】VPP基本安装
  7. quartz锁表misfire的处理策略设置
  8. JAVA偶数分解质数_优化后的寻找偶数是两个质数之和的JAVA代码
  9. 360视频:二十面体投影ISP
  10. python的sorted用法_python的sorted用法详解
  11. 间接寻址储存的线性表—基本操作实现
  12. 好员工为什么离你而去
  13. MQTT网关是什么?
  14. 数据处理任务量级巨大?构建预置容器镜像的Amazon EKS解决方案了解一下!
  15. 爬虫day1 requests基本用法和网页基础
  16. java web编写的在线问卷系统 完整源码 下载直接运行
  17. 20170421康拓普面试题
  18. channel的解析和配置方法
  19. 俩人同样写代码,我拿七千他咋五万八...(文末送书)
  20. FPGA的BRAM和distributed RAM学习

热门文章

  1. 腾讯校招智力题-赛马问题-毒药与老鼠
  2. Python使用Opencc库完成字符繁简体转换
  3. matlab求两向量夹角_matlab入门练习
  4. pt100热电阻计算公式C语言,牛顿法在Pt100铂热电阻温度计算中的应用特性分析
  5. win7怎么修改计算机皮肤,鼠标指针怎么换?小编教你win7系统更换鼠标指针皮肤的方法...
  6. ubuntu/debian-bluster 用python安装 sasl 报错解决
  7. 犹太人一直被誉为高智商的民族——那么犹太人天生就很聪明吗?听听他们自己的解释:...
  8. 佳能打印机 出现5100错误怎么办
  9. i3 10105f和i5 10400f差多少 I3 10105F和I5 10400F区别
  10. golang读取EXIF orientation标记