python gui程序禁止程序二次启动

简介: python gui程序禁止程序二次启动

一、运行环境

pycharm 2020 社区版

python 3.7

psutil 5.9.4

二、实际代码

使用进程判断是否存在在exe,存在则无法启动不存在则启动。

import os
import sys
import psutil
import tkinter
from tkinter import messagebox
from framework.base.BaseConfig import BaseConfig
from framework.views.LoginView import LoginView
if __name__ == '__main__':
    pids = psutil.pids()  # 获取所有进程PID
    list = []  # 空列表用来存储PID名称
    for pid in pids:  # 遍历所有PID进程
        p = psutil.Process(pid)  # 得到每个PID进程信息
        list.append(p.name())  # 将PID名称放入列表
        s = str(p.name())  # 将PID名称转换成字符串进行判断
        if s == "Program.exe":  # “123.exe”你要防多开进程的名称
            print(s+"当前程序已经被打开")
            pidd = os.getpid()  # 获取当前PID名称
            #root = tkinter.Tk().withdraw()
            #messagebox.showwarning(title='提示', message='当前程序已经被打开')
            # root.mainloop()
            sys.exit()
            # cmd = 'taskkill /pid ' + "pidd" + ' /f'  # 输入关闭名称命令
            # os.system(cmd)

原本是打算使用

root = tkinter.Tk().withdraw()

隐藏tk的。但是不好用啊。python gui各种问题 我也是醉了。

做GUI好的是net

python的gui玩玩得了。

目录
相关文章
|
1月前
|
存储 算法 数据处理
使用Python编写高效的数据处理程序
在当今信息爆炸的时代,数据处理变得越来越重要。本文将介绍如何使用Python语言编写高效的数据处理程序,包括利用Python内置的数据结构和函数、优化算法和并行处理等技术,帮助开发者更好地处理和分析大规模数据。
|
1月前
|
Java Python 开发者
Python 学习之路 01基础入门---【Python安装,Python程序基本组成】
线程池详解与异步任务编排使用案例-xian-cheng-chi-xiang-jie-yu-yi-bu-ren-wu-bian-pai-shi-yong-an-li
78 2
Python 学习之路 01基础入门---【Python安装,Python程序基本组成】
|
2天前
|
人工智能 数据库 开发者
Python中的atexit模块:优雅地处理程序退出
Python中的atexit模块:优雅地处理程序退出
8 3
|
4天前
|
存储 索引 Python
Python从入门到精通——1.3.1练习编写简单程序
Python从入门到精通——1.3.1练习编写简单程序
|
9天前
|
数据采集 JavaScript 前端开发
使用Python打造爬虫程序之破茧而出:Python爬虫遭遇反爬虫机制及应对策略
【4月更文挑战第19天】本文探讨了Python爬虫应对反爬虫机制的策略。常见的反爬虫机制包括User-Agent检测、IP限制、动态加载内容、验证码验证和Cookie跟踪。应对策略包括设置合理User-Agent、使用代理IP、处理动态加载内容、验证码识别及维护Cookie。此外,还提到高级策略如降低请求频率、模拟人类行为、分布式爬虫和学习网站规则。开发者需不断学习新策略,同时遵守规则和法律法规,确保爬虫的稳定性和合法性。
|
10天前
|
SQL 安全 Go
如何在 Python 中进行 Web 应用程序的安全性管理,例如防止 SQL 注入?
在Python Web开发中,确保应用安全至关重要,主要防范SQL注入、XSS和CSRF攻击。措施包括:使用参数化查询或ORM防止SQL注入;过滤与转义用户输入抵御XSS;添加CSRF令牌抵挡CSRF;启用HTTPS保障数据传输安全;实现强身份验证和授权系统;智能处理错误信息;定期更新及审计以修复漏洞;严格输入验证;并培训开发者提升安全意识。持续关注和改进是保证安全的关键。
17 0
|
26天前
|
分布式计算 算法 搜索推荐
优化 Python 程序的五大技巧
本文介绍了优化 Python 程序的五大技巧,涵盖了代码结构优化、算法选择、内置函数利用、库的使用以及并行处理等方面。通过对这些技巧的实践,可以提升 Python 程序的性能和效率,从而更好地满足各类应用的需求。
|
26天前
|
Python
python使用tkinter库,封装操作excel为GUI程序
python使用tkinter库,封装操作excel为GUI程序
|
29天前
|
前端开发 JavaScript 数据管理
描述一个使用Python开发Web应用程序的实际项目经验,包括所使用的框架和技术栈。
使用Flask开发Web应用,结合SQLite、Flask-SQLAlchemy进行数据管理,HTML/CSS/JS(Bootstrap和jQuery)构建前端。通过Flask路由处理用户请求,模块化代码提高可维护性。unittest进行测试,开发阶段用内置服务器,生产环境可选WSGI服务器或容器化部署。实现了用户注册登录和数据管理功能,展示Python Web开发的灵活性和效率。
15 4
|
1月前
|
存储 数据库连接 数据处理
Python语言的程序框架
Python语言的程序框架