实现:获取指定窗口句柄小工具

对话框头文件中

    HICON m_hIcon;
    HCURSOR mCursor; //定义鼠标
    RECT rect; //定义鼠标形状
    HWND hDest; //获得的目标句柄
BOOL CMy9Dlg::OnInitDialog()
{
    CDialogEx::OnInitDialog();
....
    mCursor = LoadCursor(NULL, IDC_SIZEALL); //默认带有箭头
    GetDlgItem(IDC_STATIC)->GetWindowRect(&rect);

...
void CMy9Dlg::OnLButtonDown(UINT nFlags, CPoint point)
{
    if (point.x >= rect.left && point.x <= rect.right || point.y >= rect.top && point.y <= rect.bottom) {
        SetCapture(); //开始捕获
        SetCursor(mCursor); //当范围匹配,就对当前光标进行改变
    }
    CDialogEx::OnLButtonDown(nFlags, point);
}
void CMy9Dlg::OnLButtonUp(UINT nFlags, CPoint point)
{
    POINT pt = point;
    CString mString;
    wchar_t sName[64];
    wchar_t sContent[64];
    ReleaseCapture();
    ClientToScreen(&pt);
    hDest = ::WindowFromPoint(pt); //获取指定POINT的窗口的句柄
    mString.Format(_T("0x%.8x"), hDest);
    SetDlgItemText(IDC_EDIT1, mString);

    GetClassName(hDest, sName, MAX_PATH); //获取类名
    SetDlgItemText(IDC_EDIT2, sName); 

    ::SendMessage(hDest, WM_GETTEXT, (WPARAM)64, (LPARAM)sContent); //获取标题
    SetDlgItemText(IDC_EDIT3, sContent);

    CDialogEx::OnLButtonUp(nFlags, point);
}

原文地址:https://www.cnblogs.com/zpchcbd/p/12296624.html

时间: 2024-10-13 19:36:12

实现:获取指定窗口句柄小工具的相关文章

手把手教你做音乐播放器(八)桌面小工具(上)

第8节 桌面小工具 桌面小工具是可以放置在主界面的.快速控制应用的小助手.例如我们的音乐小工具,它可以帮助用户在桌面上就完成音乐的暂停.播放.切换等操作,而不需要启动应用本身. 在安卓系统中,我们也常常叫它App widget. 实现一个App widget要经过以下几个步骤, 创建一个App widget类,让它继承自AppWidgetProvider,例如AnddleMusicAppWidget类: 放在res\layout目录下,为App widget的界面定义一个布局,例如anddle_

小工具-IP地址获取和设置及端口访问验证(windows)

技术部在业务部门眼里就是后勤部门,业务部门要搬到新大楼去 领导要求去帮忙调试业务人员的电脑,要保证这些大爷们周一上班来,就喝着茶打开新浪,然后打开OA看看. 手上就几个桌面支持的兄弟,要弄一百台多电脑,再看看桌面支持参差不齐的技术能力,于是给他们写了个小工具,让他们能快速实现 IP地址获取,IP地址设置,管理员权限赋权,业务系统端口验证 技术说明: 1.使用一款普通用户运行需要管理员权限的软件(CPAU.exe)支持,赋权或IP设置都通过CPAU做转换,实现普通用户实现管理员功能. 使用用例:

IE下获取XPATH小工具,支持32/64位

背景是曾经友情支持了测试组一小段时间,发现他们使用selenium做页面的自动化测试,需要用到XPath,但IE下没有获取XPath的工具,只能在Firefox和chrome下获取,步骤还比较麻烦.而且有些页面在chrome和ie生成的代码的不一样的,所以chrome下获取的xpath,到ie下就无法工作,只能自己在ie下查看页面元素自己写xpath,痛苦而且效率低下. 于是"大发慈悲",自己花了一天左右(开发加调试)写了这款小工具,弥补了IE下没有获取XPath工具的空缺.一开始用D

android 小工具:pc 上用 curl 命令打开手机浏览器,浏览指定网址

测试 API 时或其它情况经常需要在手机浏览器中输入 url 一长串的 url 输起来真是麻烦 AirDroid 很强大也不用数据线,但有时老断开连接,不是很爽.发到手机 qq 吧还得手动粘贴 所以自己开发了一个小工具 pc 上用 curl 发一条命令,命令中输入要打开的 url,手机浏览器就会自动打开 url. 当然手机和 pc 都得联网 curl -l -H "Content-type: application/json" -X POST -d '{"method&quo

Windows 上的 Jetty 小工具

做项目经常遇到需要开发Java应用,我喜欢用Jetty进行开发.部署,主要是由于Jetty的轻量级. Jetty 项目主页:http://www.eclipse.org/jetty/, 最新版9.30刚刚添加对 HTTP/2的支持. 但是Jetty在Windows下部署不是很方便,需要用命令行. 每次都要使用命令行,很是麻烦,于是我打算做一个Jetty的小工具,把命令行操作封装一下,可以在GUI中启动.停止Jetty,可以配置常用参数等. 完成之后的界面如下: 测试代码下载 编译好的可执行文件:

网上书城小工具(也适用于其他项目)

工欲善其事,必先利其器.下面我们来介绍一下在项目中要使用的小工具(itcast-tools-1.4.jar).这个小工具底层使用了: · c3p0数据库连接池: · common-beanutils: ·common-dbutils: · javaMail: 1 CommonUtils(通用工具类) CommonUtils类就两个方法: ·String uuid():生成长度32的随机字符,通常用来做实体类的ID.底层使用了UUID类完成: ·T toBean(Map, Class<T>):把

基于Java 的增量与完全备份小工具

前段时间,因为各种原因,自己动手写了一个小的备份工具,用了一个星期,想想把它的设计思路放上来,当是笔记吧. 需求场景:这个工具起初的目的是为了解决朋友公司对其网络的限制(不可以用任何同步软件,git,外网SVN,U盘只读).本来只是想做一个自动打包和发送邮件的工具,后来就发展成了这个. 软件功能:这个软件最终实现的功能包括1.读取配置文件,对配置文件中指定目录的文件进行日期检测,获取对应修改过的文件.2.将读出的文件进行压缩:3.将压缩文件发送到指定邮箱:4.对压缩文件进行历史版本的保留 根据最

还是Robotium娱乐小工具,取名LikeMonkey(持续更新成果,纯属娱乐,请勿吐槽)

这是我入职新公司以来第一个相对来说比较成型的工具,虽然功能是那么的弱智,但是基本上我是抱着认真的态度来看待这个工具的开发 废话不多说,首先阐明一下这个工具的意图: 意图:起因是当时需要测试公司APK的稳定性,开发建议使用Monkey,但是Monkey是有很多弊病的,比如加-p参数即使加了指定包名,也还是会有时跳出被测程序,跑到OS里去执行:还比如测试中经常会有需要模拟按键的操作,比如音量,HOME之类的,这些是我所不需要的,而恰恰公司4个APK中都有的左滑右滑貌似没有支持,所以萌生出了一个自己用

mfc小工具开发之定时闹钟之---多线程急线程同步

一.MFC对多线程编程的支持 MFC中有两类线程,分别称之为工作者线程和用户界面线程.二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环. 工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等.用户界面线程一般用于处理独立于其他线程执行之外的用户输入,响应用户及系统所产生的事件和消息等.但对于Win32的API编程而言,这两种线程是没有区别的,它们都只需线程的启动地址即可启动线程来执行任务. 在MFC中,一般用全局函数Afx