鱼C论坛

 找回密码
 立即注册
查看: 3301|回复: 9

用pyinstaller打包之后程序一直反复打开同样的窗口怎么办

[复制链接]
发表于 2020-9-5 23:16:34 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
用tkinter画了个界面 用编译器跑基本上是没问题的
不过用pyinstaller打包之后按一下按钮就会蹦出来一个同样的窗口 原先的窗口卡死 再按新窗口的按钮的话就loop 关掉新窗口的话原先的就可以跑 不过由于有循环所以又会蹦出新的 然后loop
所以推测问题大概是不是和pyinstaller或者tkinter都没有关系 而是函数的问题。。。。
不过自己脑残一个 完全不知道怎么排查怎么处理

大概也许有问题的函数段放一下
    ping_str= "-n 1" if  platform.system().lower()=="windows" else "-c 1"
    cmd= "ping " + " " + ping_str + " " + ip_1
    useShell= not(platform.system().lower()=="windows")
    result= subprocess.run(args=cmd,universal_newlines=True,shell=useShell,stdout=subprocess.PIPE)
    output= result.stdout.splitlines()

作用是ping一下指定的IP(抄来的)
如果不是这里有问题也想不出哪里有问题了
所以有没有大神能救救我
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-9-5 23:45:54 | 显示全部楼层
stdout=subprocess.PIPE
这个参数去掉或者写None呢?

subprocess.PIPE
一个可以被用于Popen的stdin 、stdout 和stderr 3个参数的特输值,表示需要创建一个新的管道。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-6 11:43:49 | 显示全部楼层
疾风怪盗 发表于 2020-9-5 23:45
这个参数去掉或者写None呢?

subprocess.PIPE

不行,去掉或者改成none都解决不了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-6 11:46:11 | 显示全部楼层
469705068 发表于 2020-9-6 11:43
不行,去掉或者改成none都解决不了

要么全部代码放出来看看
就上面这些,看不出哪里有问题。。。。。。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-6 13:58:35 From FishC Mobile | 显示全部楼层
本帖最后由 _2_ 于 2020-9-6 14:06 编辑

好像 ping 一个 ip 没那么多代码吧(有别的要求另说)
import os
def ping_ip(ip: str) -> None:
    os.system("".join(["ping", " ", ip, " ", "|", " ", "clip"]) # Only for Windows
    print("已复制到剪切板")
    return
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-6 14:02:39 | 显示全部楼层
来围观下 ,具体  新人凑个热闹
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-6 17:42:31 From FishC Mobile | 显示全部楼层
_2_ 发表于 2020-9-6 13:58
好像 ping 一个 ip 没那么多代码吧(有别的要求另说)

也没什么特别的要求 主要就是想知道为什么会有这样的问题 然后怎么解决 直觉感觉问题应该就是在这几行里面 其他都是随便写写也没什么奇怪的循环 拿编译器跑也没问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-6 17:44:17 From FishC Mobile | 显示全部楼层
疾风怪盗 发表于 2020-9-6 11:46
要么全部代码放出来看看
就上面这些,看不出哪里有问题。。。。。。。。。

其他的就是普通的建个窗口建个界面什么的 只有抄的这几行一点都看不懂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-6 18:02:39 | 显示全部楼层
469705068 发表于 2020-9-6 17:44
其他的就是普通的建个窗口建个界面什么的 只有抄的这几行一点都看不懂

那就不知道了。。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-6 21:28:52 From FishC Mobile | 显示全部楼层
469705068 发表于 2020-9-6 17:42
也没什么特别的要求 主要就是想知道为什么会有这样的问题 然后怎么解决 直觉感觉问题应该就是 ...

……
subprocess,platform 都是什么模块?(必须确保没有 import xxx as platform 类似的,应该不太可能)
还有 not() 又是个什么函数?
你这个片段许多信息不足啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-18 20:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表