python win32api获取窗口句柄 根据窗口句柄隐藏、关闭进程
安装WIN32API和psutil第三方库
pip install pypiwin32
pip install psutil
下面列出了四种应用场景:
一,获取句柄及名称
import win32guihwnd_title = dict()def get_all_hwnd(hwnd, mouse):if win32gui.IsWindow(hwnd) and win32gui.IsWindowEnabled(hwnd) and win32gui.IsWindowVisible(hwnd):hwnd_title.update({hwnd: win32gui.GetWindowText(hwnd)})if __name__ in "__main__":win32gui.EnumWindows(get_all_hwnd, 0)for h, t in hwnd_title.items():if t is not "":print(h, t)
二,根据进程标题名称隐藏运行进程
import win32guifrom win32.lib import win32condef handle_window(hwnd, extra):if win32gui.IsWindowVisible(hwnd):if '需要隐藏的程序标题名称' in win32gui.GetWindowText(hwnd):win32gui.ShowWindow(hwnd, win32con.SW_HIDE)if __name__ == '__main__':win32gui.EnumWindows(handle_window, None)# win32gui.EnumWindows(枚举函数名称, None) 语句是进行句柄ID枚举
# win32gui.GetWindowText(句柄ID) 语句是通过句柄ID来获取进程名称
# win32gui.IsWindowVisible(句柄ID) 语句是查询此句柄ID是否存在,存在返回1 否则返回0
# win32gui.ShowWindow(句柄ID, win32con.SW_HIDE) 语句是通过指定句柄ID来隐藏进程
三,根据程序名称来获取进程PID,然后通过PID杀掉进程
import win32gui
import win32process
import psutildef handle_window(hwnd, extra):if win32gui.IsWindowVisible(hwnd):if '程序标题' in win32gui.GetWindowText(hwnd): # 判断是否符合_,PID = win32process.GetWindowThreadProcessId(hwnd) # 通过句柄ID查询进程PID(第0个元素不管,第1个元素是PID)p = psutil.Process(PID) # 实例化PIDp.terminate() # 关闭PID进程if __name__ in "__main__":win32gui.EnumWindows(handle_window, None) # 通过句柄ID查询PID并关闭PID
四,根据PID查询,返回句柄ID
import win32gui
import win32processdef get_hwnds_for_pid(pid):# 通过PID查询句柄IDdef callback(hwnd, hwnds):if win32gui.IsWindowVisible(hwnd) and win32gui.IsWindowEnabled(hwnd):_, found_pid = win32process.GetWindowThreadProcessId(hwnd)if found_pid == pid:hwnds.append(hwnd)return Truehwnds = []win32gui.EnumWindows(callback, hwnds)hwndy = 0if hwnds:hwndy = hwnds[0]return hwndyif __name__ in "__main__":get_hwnds_for_pid(传入PID值) # 传入PID值后返回句柄ID
python win32api获取窗口句柄 根据窗口句柄隐藏、关闭进程相关推荐
- 【python句柄获取】——简单明了的获取窗口句柄,并使用句柄操作获取相应内容(全网最详细)
点个赞留个关注吧!! 所使用模块 import win32gui import win32con import win32api import psutil import win32process 获 ...
- c# 获取当前活动窗口句柄,获取窗口大小及位置
2019独角兽企业重金招聘Python工程师标准>>> 需调用API函数 需在开头引入命名空间 using System.Runtime.InteropServices; 获取当前窗 ...
- cpp map 获取所有 key_自动获取雷电模拟器窗口句柄
每次都用命令行去获取窗口句柄虽说不麻烦,却是让人很不爽的事,今天我们就来看看如何自动获取窗口句柄. 首先,上次我们看到了获取窗口句柄是用雷电模拟器自带的命令行工具 dnconsole.exe,其实他和 ...
- Python自动获取QQ群消息
由于WebQQ关闭了,无法通过webQQ来自动的获取QQ中的消息,故采用模拟人查看消息的操作方式来实现自动获取消息.通过调用win32实现窗口监听,找到需要获取的消息窗口句柄,再通过模拟Ctrl+C和 ...
- python selenium 对浏览器标签页进行关闭和切换
1.关闭浏览器全部标签页 driver.quit() 2.关闭当前标签页(从标签页A打开新的标签页B,关闭标签页A) driver.close() 3.关闭当前标签页(从标签页A打开新的标签页B,关闭 ...
- python + win32api,win32gui,win32con 写 exe 窗口的时候,怎么创建按钮呢?
问题描述: 自己用 python + win32api 想写 exe 脚本文件,但是按钮都不会创建 python + win32api,win32gui,win32con 写 exe 窗口的时候,怎么 ...
- Python爬虫获取文章的标题及你的博客的阅读量,评论量。所有数据写入本地记事本。最后输出你的总阅读量!
Python爬虫获取文章的标题及你的博客的阅读量,评论量.所有数据写入本地记事本.最后输出你的总阅读量!还可以进行筛选输出!比如阅读量大于1000,之类的! 完整代码在最后.依据阅读数量进行降序输出! ...
- python操作手机app_【Python】[技术博客] 一些使用Python编写获取手机App日志的操作...
一些使用Python编写获取手机App日志的操作 如何获取手机当前打开的App的包名 如何获取当前App进程的PID 如何查看当前App的日志 如何将日志保存到文件 如何关闭进程 如何不显示命令行窗口 ...
- 服务器获取客户端电脑文件,python实现获取客户机上指定文件并传输到服务器的方法 -电脑资料...
作者:上大王 字体:[增加 减小] 类型:转载 这篇文章主要介绍了python实现获取客户机上指定文件并传输到服务器的方法,涉及Python实现C/S架构程序与socket程序的使用技巧,需要的朋友可 ...
最新文章
- 带通采样定理简单记录
- 唐山师范学院计算机考试,[河北]唐山师范学院2017年3月计算机一级考试报名时间...
- 探索中国广电“智慧城市”未来转型路径
- syslog发送日志而docker容器接收不到的问题
- html新建通用loading,漂亮实用的页面loading(加载)封装代码
- xposed+justTrustme使用与分析
- JavaScript 身份证验证
- 180522必须掌握command(一)
- 圣科车衣,给予您的爱车完美守护
- 2020年12月计算机一级考试,5省市已公布2020年12月计算机等级考试时间,切勿错过!...
- 【通州爆料】通州台湖一村被征地建设轻轨L2线
- 【微信小程序】微信小程序开发(一)
- 一杯茶一包烟,一行代码码一天!用Python分析程序员抽的烟!
- 2022-11-01 网工进阶(三十四) IP组播协议(PIM)-模式概述、组播分发树的分类、PIM路由表项、PIM-DM工作原理(组播分发树的形成、配置举例)
- win7 64bit共享XP M1005打印机
- android jni不适用ndk,Android NDK编译之undefined reference to 'JNI_CreateJavaVM'
- C# 窗体制作Aero效果
- KUKA机器人程序运行方式总结
- deepin显卡驱动管理器在哪_deepin20 安装英伟达闭源驱动的步骤详解
- Android性能测试方法【硬核】