python实现关闭第三方窗口的方法

yipeiwu_com7年前Python基础

背景

最近在测试一款软件的关闭第三方窗口的功能,感觉实现应该挺简单的。所以就尝试了。由于说它的实现是靠c++实现的,本人对c++实在不在行,但是python的第三方库实际上是封装了一套win32的api的 所以我们还是可以依靠python 来实现这个的。

实现

直接贴代码吧 很简单

# -*- coding: utf-8 -*-
from win32gui import *
import win32gui
import win32con
from time import sleep

def foo(hwnd,mouse):
  global config_contents
  if IsWindow(hwnd) and IsWindowEnabled(hwnd) and IsWindowVisible(hwnd):
    for content in config_contents:
      ads_info = []
      if not '|' in content :
        continue
      else:
        ads_info = content.split('|')
      if GetClassName(hwnd)==ads_info[1] and GetWindowText(hwnd)==ads_info[0]:
        win32gui.PostMessage(hwnd, win32con.WM_CLOSE, 0, 0)


config_file = open("C:\\1.txt","r")
config_contents = config_file.readlines()
while 1:
  EnumWindows(foo, 0)
  sleep(0.5)

这里我们是直接读取第三方的配置文件,配置文件的内容就写了 窗口标题|窗口类名 的形式。所以我们就直接判断窗口已经窗口类名是否与配置文件一致,如果一致就发送关闭窗口的命令就可以了。

以上这篇python实现关闭第三方窗口的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python在线编译器的简单原理及简单实现代码

python在线编译器的简单原理及简单实现代码

我们先来看一下效果(简单的写了一个): 原理:将post请求的代码数据写入了服务器的一个文件,然后用服务器的python编译器执行返回结果 实现代码: #flaskrun...

Python实现平行坐标图的两种方法小结

Python实现平行坐标图的两种方法小结

平行坐标图,一种数据可视化的方式。以多个垂直平行的坐标轴表示多个维度,以维度上的刻度表示在该属性上对应值,相连而得的一个折线表示一个样本,以不同颜色区分类别。 但是很可惜,才疏学浅,没办...

DataFrame 将某列数据转为数组的方法

如下所示: playerIds =salaries_2016['playerID'].tolist() data['列名'].tolist() 以上这篇DataFrame 将某列...

python实现下载整个ftp目录的方法

前言 最近因为业务需求,就写了这个脚本,脚本完成的任务是从FTP上下载一个目录,大家都知道从FTP上下载一个文件可用用get命令,下载多个文件可以用mget,但你要下载一个目录,对不起,...

TensorFlow绘制loss/accuracy曲线的实例

TensorFlow绘制loss/accuracy曲线的实例

1. 多曲线 1.1 使用pyplot方式 import numpy as np import matplotlib.pyplot as plt x = np.arange(1,...