首页 > 系统相关 >Windows窗口句柄监控

Windows窗口句柄监控

时间:2024-04-15 15:45:11浏览次数:22  
标签:__ screenshot Windows 句柄 hwnds flag 监控 hwnd new

我说想要一段实现了 当发现windows桌面上冒出新窗口就截图保存的功能,AI写的,测了下能用。

# pip install pyautogui pywin32
import time
import win32gui
import pyautogui

def capture_window_screenshot(hwnd):
    """截取截图"""
    screenshot = pyautogui.screenshot()
    screenshot.save(f"screenshot_{hwnd}.png")

def monitor_new_windows():
    # 存储已知窗口句柄
    known_hwnds = set()  
    all_hwnds = []
    
    def enum_callback(hwnd, _):
        all_hwnds.append(hwnd)
    
    win32gui.EnumWindows(enum_callback, None)
    for hwnd in set(all_hwnds):
        known_hwnds.add(hwnd)
    
    flag = 0
    while True:
        all_hwnds = []
        flag = 0
        win32gui.EnumWindows(enum_callback, None)
        # 检查新出现的窗口
        new_hwnds = set(all_hwnds) - known_hwnds
        for hwnd in new_hwnds:
            known_hwnds.add(hwnd)
            flag = 1

        if flag == 1:
            capture_window_screenshot(hwnd)

        time.sleep(180)

if __name__ == "__main__":
    monitor_new_windows()

我倒要看看工位电脑每晚是怎么自动关机的

标签:__,screenshot,Windows,句柄,hwnds,flag,监控,hwnd,new
From: https://www.cnblogs.com/thx2199/p/18136087

相关文章

  • Nexpose v6.6.246 for Linux & Windows - 漏洞扫描
    Nexposev6.6.246forLinux&Windows-漏洞扫描Rapid7VulnerabilityManagement,ReleaseApr10,2024请访问原文链接:https://sysin.org/blog/nexpose-6/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org您的本地漏洞扫描程序搜集通过实时覆盖整个网络,随......
  • Electerm安装、配置与卸载教程(Windows版)
    Electerm是一款开源免费的终端模拟器,集终端模拟器、文件管理器、SSH远程连接、SFTP客户端等功能于一体。它可以在Windows、macOS和Linux操作系统上运行,为用户提供一个功能丰富、易于使用的终端环境。通过Electerm,用户可以在同一窗口中运行多个SSH会话,轻松管理远程服务器,并使用各......
  • 简单了解前端性能监控
    作为一名开发来讲,以下场景你有没有遇到:点击这个按钮怎么没反应了页面为什么白了怎么一直正在加载很多用户说图片加载不出来......那么有一款性能监控产品太重要了,但是性能相关的东西实在太多了。那么从一个熟悉又陌生的api开始,performance。1.什么是performancemdn上是......
  • windows 使用MSVC2022编译 Qt 5.12.11
    准备准备一下安装程序,并添加到PATH环境变量。Perl选择64位Portable:PerlPortableRuby选择64位版本进行安装:ruby64bitPython安装Pythonjomnmake不支持并行编译,使用jom进行并行编译。下载jom,解压并添加到PATH环境变量。jomQt5.12.11编译下载地址:Qt5.12.11。使用MS......
  • centos 监控
    1.pom.xml引入<dependency><groupId>ch.ethz.ganymed</groupId><artifactId>ganymed-ssh2</artifactId><version>262</version></dependency>ViewCode 2.java代码packa......
  • WDS+MDT网络启动自动部署windows(六)rules bootstrip.ini
    简介这就是自动化的关键一步。自动化规则,启动脚本。关键是设置共享文件夹属性中的Rules标签。设置rulesbootstrap.ini官方示例分步-使用MDT在测试实验室中部署Windows10-Windows10|Microsoft学习fully-automated-lti-deployment-for-a-refresh-computer-scenari......
  • Windows 自定义服务(Windows Service)管理
    Windows自定义服务(WindowsService)管理在Windows系统中,你可以使用sc.exe命令或者PowerShell来创建自定义服务。以下是两种方法:使用sc.exe命令:打开命令提示符(以管理员身份运行)。使用sc.exe命令创建服务,语法如下:sccreate<ServiceName>binPath="<PathtoE......
  • WDS+MDT网络启动自动部署windows(五)MDT安装
    简介终于搞到自动化了。这个需要MDT来做,虽然微软已经简易上configmanager了。但是那东西要钱。还是在MDT上折腾吧MDT,是一个共享,基于samba共享来进行安装的。它可以生成一个启动镜像(PE),启动ISO,用来安装系统,可以同时做很多自动化操作,比应答脚本强大的多。这个PE就是ADK提供的。......
  • 将网站打包成Windows应用程序
    #准备###安装node.jshttps://nodejs.cn/download/https://npmmirror.com/mirrors/node/v18.20.0/node-v18.20.0-x64.msi#安装Nativefier npminstallnativefier-g#创建应用程序nativefier"https://www.toutiao.com/"或者自定义一个客户端程序名:nativefier--n......
  • Windows 程序包管理器 Chocolatey 的使用
    Windows程序包管理器Chocolatey的使用Chocolatey是一个Windows平台上的软件包管理工具,类似于Linux上的apt、yum或者macOS上的Homebrew。它允许用户通过命令行快速安装、更新和卸载软件包。Chocolatey官网Chocolatey的安装、更新和卸载1.安装Chocolateycmd......