当前位置: 首页 > news >正文

【C#】获得所有可见窗口信息

【背景】

由于自己的瘦客户端上的Windows自带截图软件功能被阉割,所以自己写了一个,其中有窗口截图功能,涉及到获得所有可见窗口的信息。

【代码】

public WindowInfo[] GetAllDesktopWindows(){//用来保存窗口对象 列表List<WindowInfo> wndList = new List<WindowInfo>();//enum all desktop windows EnumWindows(delegate (IntPtr hWnd, int lParam){WindowInfo wnd = new WindowInfo();StringBuilder sb = new StringBuilder(256);Rect rcowner = new Rect();//get hwnd wnd.hWnd = hWnd;//judge if visibleif (IsWindowVisible(hWnd) ){//get window rectGetWindowRect(hWnd, ref rcowner);wnd.rc = rcowner;if ((rcowner.Left - rcowner.Right) != 0 && (rcowner.Top - rcowner.Bottom) != 0){//get window name  GetWindowTextW(hWnd, sb, sb.Capacity);wnd.szWindowName = sb.ToString();//get window class GetClassNameW(hWnd, sb, sb.Capacity);wnd.szClassName = sb.ToString();//get window infouint x=0;GetWindow(hWnd, x);//add it into list wndList.Add(wnd);}}return true;}, 0);return wndList.ToArray();}

相关文章:

【C#】获得所有可见窗口信息

【背景】 由于自己的瘦客户端上的Windows自带截图软件功能被阉割&#xff0c;所以自己写了一个&#xff0c;其中有窗口截图功能&#xff0c;涉及到获得所有可见窗口的信息。 【代码】 public WindowInfo[] GetAllDesktopWindows(){//用来保存窗口对象 列表List<WindowInf…...

ffmpeg的基本功能介绍

之前对ffmpeg有一个模糊的印象&#xff0c;后来经过一些项目对ffmpeg有了深入的认识&#xff0c;这里总结下。 最开始对ffmpeg的印象是可以对视频进行一些处理操作&#xff0c;但是做哪些操作又不是很清楚&#xff0c;知其然不知其所以然。下面对于ffmpeg的功能进行一个总结&a…...

QECon大会亮相产品,支持UI自动化测试?RunnerGo

最近在gitee上看见一款获得GVP&#xff08;最有价值开源项目&#xff09;的测试平台RunnerGo&#xff0c;看他们官网介绍包含了接口测试、性能测试、自动化测试。知道他们有saas版可以试用&#xff0c;果断使用了一下&#xff0c;对其中场景管理和性能测试印象深刻&#xff0c;…...

Linux开关机相关的命令解析

前言 Linux直接拔电源关机 ,内存中的东西还没保存到硬盘。所以有时候会导致数据丢失或者有些服务起不来。所以最好直接命令行关机就像windows电脑需要界面关机一样。而不是强制拔电源 关机命令 halt halt:关机但是不关闭电源,需要手动关闭电源(加p参数会关闭电源),不…...

C++二分查找算法的应用:俄罗斯套娃信封问题

本文涉及的基础知识点 二分查找 题目 给你一个二维整数数组 envelopes &#xff0c;其中 envelopes[i] [wi, hi] &#xff0c;表示第 i 个信封的宽度和高度。 当另一个信封的宽度和高度都比这个信封大的时候&#xff0c;这个信封就可以放进另一个信封里&#xff0c;如同俄罗…...

redis如何保证和mysql数据的一致性

Redis和MySQL是两种不同的数据库系统&#xff0c;它们在数据一致性方面有不同的特点和应用场景。保证Redis和MySQL数据的一致性通常需要考虑以下几个方面&#xff1a; 双写策略&#xff1a; 一种常见的方法是采用双写策略&#xff0c;即将更新操作同时写入Redis和MySQL。这确保…...

SpringBoot整合Redisson,赶紧整起来!

SpringBoot整合Redisson 一、Redisson 是什么&#xff1f;二、使用场景三、使用步骤1.引入相关依赖2.application.yml配置3.创建RedissonConfig4.开始使用 总结 提示&#xff1a;以下是本篇文章正文内容 一、Redisson 是什么&#xff1f; Redisson是一个基于Java的开源的、高…...

测试Whisper效果

先去官方上面看看&#xff0c;是否有对应的测试结果 简单找了一下&#xff0c;没找到对应的测试数据 去hugging face 上面找对应的数据集&#xff0c;发现没有现成的数据 找到了几个数据集&#xff0c;但是是收费的 101 Hours – Scene Noise Data by Voice Recorder 1,29…...

Seata 四种事务模式

Seata 是一款开源的分布式事务解决方案&#xff0c;致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式&#xff0c;为用户打造一站式的分布式解决方案。 全文参考文献&#xff1a;中文文档 TC (Transaction Coordinator) - 事务…...

超好用的IDEA插件推荐,写完代码直接调试接口

Apipost推出IDEA插件非常省时高效&#xff0c;写完代码直接可以进行调试&#xff0c;而且支持生成接口文档&#xff0c;真是后端神器啊&#xff01; 可以点击下方链接安装更新或在插件商店中搜索安装 下载链接&#xff1a;https://plugins.jetbrains.com/plugin/22676-apipos…...

发送post请求、携带cookie、响应对象、高级用法

发送post请求 请求体中&#xff0c;两种方式&#xff1a;data{} ⇢ \dashrightarrow ⇢ 编码格式 urlencoded ⇢ \dashrightarrow ⇢ keyvalue&keyvaluejson{} ⇢ \dashrightarrow ⇢ 编码格式是json 使用方式&#xff1a; resrequests.post(url) 模拟登录 import …...

JMeter接口测试性能测试

目前最新版本发展到5.0版本&#xff0c;需要Java7以上版本环境&#xff0c;下载解压目录后&#xff0c;进入\apache-jmeter-5.0\bin\&#xff0c;双击ApacheJMeter.jar文件启动JMemter。 1、创建测试任务 添加线程组&#xff0c;右击测试计划&#xff0c;在快捷菜单单击添加-…...

MongoDB——MongoDB删除系统自带的local数据库

一、MongoDB删除系统自带的local数据库 1.1、linux环境进入mongo客户端 输入 mongo 命令&#xff0c;进入命令行客户端 进入admin库&#xff0c;并登录&#xff0c;查看所有数据库 #进入admin库 use admin #并登录admin db.auth("username","password")…...

【LeetCode刷题-链表】--203.移除链表元素

203.移除链表元素 方法&#xff1a;定义一个节点指向头节点head&#xff0c;避免头结点单独操作 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val val; }* …...

Microsoft Dynamics 365 CE 扩展定制 - 3. SDK企业功能

在本章中,我们将介绍以下内容: 服务器端并发控制客户端并发控制在事务中执行请求批处理请求暂存数据导入创建早期绑定的实体类扩展CrmSvcUtil用Filter扩展CrmSvcUtil以生成选项集枚举使用CRM配置迁移工具跨实例迁移配置简介 回顾Dynamics CRM的历史,该产品经过多年的发展以…...

人工智能基础_机器学习016_BGD批量梯度下降求解多元一次方程_使用SGD随机梯度下降计算一元一次方程---人工智能工作笔记0056

然后上面我们用BGD计算了一元一次方程,那么现在我们使用BGD来进行计算多元一次方程 对多元一次方程进行批量梯度下降. import numpy as np X = np.random.rand(100,8) 首先因为是8元一次方程,我们要生成100行8列的X的数据对应x1到x8 w = np.random.randint(1,10,size = (8…...

硬件测试(二):波形质量

一、信号质量测试 信号在传输的过程中&#xff0c;一般不是标准的矩形波信号&#xff0c;信号质量测试即通过示波器测试单板硬件的数字信号和模拟信号的各项指标&#xff0c;包括电源、时钟、复位、CPU小系统、外部接口&#xff08;USB、网口、串口&#xff09;、逻辑芯片(CPLD…...

PostgreSQL 数据库日志相关参数

PostgreSQL数据库的配置主要是通过修改数据目录下的 postgresql.conf和pg_hba.conf文件来实现的。 如果想从其他机器上登录该数据 库&#xff0c;需要把监听地址改成实际网络的地址&#xff0c;一种简单的方法是把地址 改成“*”&#xff0c;表示在本地的所有地址上监听&#…...

delete请求,express获取req.body失败

使用 Express 框架处理 DELETE 请求时&#xff0c;通常情况下是不会有请求体的。DELETE 请求通常用于删除资源&#xff0c;而不是发送数据。因此&#xff0c; Express 默认情况下不会解析 DELETE 请求的请求体。 如果需要在 DELETE 请求中发送数据&#xff0c;一种常见的做法是…...

2023年江西省职业院校技能竞赛“网络安全”赛项样题

二、竞赛注意事项 1.竞赛期间禁止携带和使用移动存储设备、计算器、通信工具及 参考资料。 2.请根据大赛所提供的竞赛环境&#xff0c;检查所列的硬件设备、软件清 单、材料清单是否齐全&#xff0c;计算机设备是否能正常使用。 3.在进行任何操作之前&#xff0c;请阅读每个部分…...

安装 KubeSphere

安装 KubeSphere KubeSphere Core (ks-core) 是 KubeSphere 的核心组件&#xff0c;为扩展组件提供基础的运行环境。KubeSphere Core 安装完成后&#xff0c;即可访问 KubeSphere Web 控制台。 1. 安装 KubeSphere Core 在集群节点上&#xff0c;执行以下命令安装 KubeSpher…...

期刊论文重复率多少才算合格?

没有一个“全国统一合格线”。很多人想要一个标准答案&#xff0c;比如“10%以下就稳”“15%以下就能投”。现实是&#xff1a;看你投什么期刊、什么学科、什么系统。大致可以这么看&#xff1a;1. 普通国内期刊&#xff1a;通常 10%–30% 区间常见 有些普刊要求比较宽&#xf…...

Windows热键冲突终极指南:如何用Hotkey Detective快速定位“键盘小偷“

Windows热键冲突终极指南&#xff1a;如何用Hotkey Detective快速定位"键盘小偷" 【免费下载链接】hotkey-detective A small program for investigating stolen key combinations under Windows 7 and later. 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey…...

别再死记硬背了!用Spark实战电影评分分析,手把手教你搞定Join操作与数据清洗

用Spark实战电影评分分析&#xff1a;从数据清洗到Join操作的完整指南 每次看到电影评分网站上的"Top 100"榜单&#xff0c;你有没有好奇过背后的数据处理逻辑&#xff1f;作为Spark初学者&#xff0c;你可能已经啃了不少官方文档&#xff0c;但面对真实数据集时依然…...

星露谷物语SMAPI模组加载器:从新手到专家的终极指南

星露谷物语SMAPI模组加载器&#xff1a;从新手到专家的终极指南 【免费下载链接】SMAPI The modding API for Stardew Valley. 项目地址: https://gitcode.com/gh_mirrors/smap/SMAPI 你是否曾梦想为星露谷物语添加全新的游戏体验&#xff1f;SMAPI模组加载器正是实现这…...

如何用ESP32制作你的专属开源智能手表:DIY终极指南

如何用ESP32制作你的专属开源智能手表&#xff1a;DIY终极指南 【免费下载链接】awesome-esp &#x1f4f6; A curated list of awesome ESP8266/32 projects and code 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-esp 想要拥有一个完全自定义的智能手表吗&am…...

Vibe Vibe 测试自动化:如何用AI帮你写测试代码,保证项目质量

Vibe Vibe 测试自动化&#xff1a;如何用AI帮你写测试代码&#xff0c;保证项目质量 【免费下载链接】vibe-vibe The First Systematic Vibe Coding Open-Source Tutorial | From Zero to Full-Stack, Empowering Everyone to Build Products with AI | Live at: www.vibevibe.…...

从0到1:如何用MNBVC超大规模中文语料库训练你的中文大模型

从0到1&#xff1a;如何用MNBVC超大规模中文语料库训练你的中文大模型 【免费下载链接】MNBVC MNBVC(Massive Never-ending BT Vast Chinese corpus)超大规模中文语料集。对标chatGPT训练的40T数据。MNBVC数据集不但包括主流文化&#xff0c;也包括各个小众文化甚至火星文的数据…...

Python金融数据引擎:重构通达信数据获取的技术范式

Python金融数据引擎&#xff1a;重构通达信数据获取的技术范式 【免费下载链接】mootdx 通达信数据读取的一个简便使用封装 项目地址: https://gitcode.com/GitHub_Trending/mo/mootdx 在量化投资和金融数据分析领域&#xff0c;数据获取一直是开发者面临的首要挑战。传…...

Voice-Pro 免费开源杀疯了:语音翻译、AI克隆、人声分离、YouTube下载全打包,狂省上千元

你是否也曾想过做视频&#xff0c;英文视频翻译成中文发到国内&#xff0c;或者把自己做的中文视频配上地道的英文&#xff0c;扬帆出海&#xff1f; 然而&#xff0c;现实往往会给你迎头痛击&#xff1a; 工具太碎片 &#xff1a;用 yt-dlp 下载了视频&#xff0c;要用 Demu…...