Windows通过FindWindow控制其他程序的窗口

Windows通过FindWindow控制其他程序的窗口如上代码所示通过调用windows的系统函数FindWindow

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

#include <windows.h>
#include <iostream>
#include <stdlib.h>

int main()
{
	HWND h = FindWindow(NULL, L"我的电脑");	//"本地磁盘 (D:)"、"我的电脑"
	std::cout << h << std::endl;

	if (h)
	{
		//最小化窗口
		BOOL b = CloseWindow(h);
		std::cout << "最小化窗口" << (b? "成功" : "失败") << std::endl;

		最大化窗口
		//ShowWindow(h, SW_SHOWMAXIMIZED);

		///修改标题栏,居然可以
		SetWindowText(h, L"哈哈哈~");
	}

	system("pause");
	return 0;
}


Windows通过FindWindow控制其他程序的窗口

Windows通过FindWindow控制其他程序的窗口

如上代码所示通过调用windows的函数FindWindow,根据标题获取其他程序的句柄,然后做一些操作(例子中是调用CloseWindow最小化窗口)。

参考博文:http://hi.baidu.com/it_ibear/item/aa3e11f53d06760384d2785b

这篇参考文章较好,不仅讲了如何获取窗口句柄,还讲了如何获取窗口中的按钮、文本框的句柄,以及如何通过发消息修改和操作这些控件。用到的函数简单列出来:

CWnd *pwnd=pWnd->GetWindow(GW_CHILD);//枚举保存对话框的所有子控件

pwnd = pwnd->GetNextWindow(); //获取同一层的其他窗口

::GetClassName(pwnd->GetSafeHwnd(),buf,512);//得到枚举的控件是什么类型的
::SendMessage(pwnd->GetSafeHwnd(),WM_LBUTTONDOWN,0,0);
 pwnd->SendMessage(WM_GETTEXT,sizeof(BUF)/sizeof(TCHAR),(LPARAM)(void*)BUF);
pedit->SendMessage(WM_SETTEXT,0,(LPARAM)filename);

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/170219.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 动态规划优缺点_巴西优化航空路线利用率

    动态规划优缺点_巴西优化航空路线利用率C 国有 n 个大城市和 m 条道路,每条道路连接这 n 个城市中的某两个城市。任意两个城市之间最多只有一条道路直接相连。这 m 条道路中有一部分为单向通行的道路,一部分为双向通行的道路,双向通行的道路在统计条数时也计为 1 条。C 国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同城市的价格不一定相同。但是,同一种商品在同一个城市的买入价和卖出价始终是相同的。商人阿龙来到 C 国旅游。当他得知“同一种商品在不同城市的价格可能会不同”这一信息之后,便决定在旅游的同时,利用商品在

  • 【elasticsearch系列】windows安装IK分词器插件[通俗易懂]

    【elasticsearch系列】windows安装IK分词器插件[通俗易懂]环境github下载:https://github.com/medcl/elasticsearch-analysis-ik/releases注意,IK分词器插件要与ES版本保持一致;有的小伙伴在GitHub上下载插件时,没有发现与ES相对应的版本,可以切换到Tags中选择分支版本;例如Branchs列表中仅可能存在主版本号;切换到右侧Tags中查找对应的版本即可;小编这里选择的7.8.0的版本;安装IK解压缩后拷贝到ElasticSearch安装目录的plugins文件夹下,默认情况该

  • freemarker菜鸟教程_freemarker自定义标签

    freemarker菜鸟教程_freemarker自定义标签使用的环境为SpringMVC+FreeMarker,要在ftl页面中使用contextPath,需要在viewResolver中做如下配置(红色部分):这样,在页面中使用${rc.contextPath}就可获得contextPath

  • 澳男星“雷神”发布健身App 好友与妻子齐助阵

    澳男星“雷神”发布健身App 好友与妻子齐助阵

  • Silverlight QQ的联想

    Silverlight QQ的联想非常同意Livesion的观点:“腾讯依靠其绝对的用户基数可以保证新产品强劲的生命力,即便功能再一般、“模仿”再不到位,也总能在这个市场占有一席;也因为其用户基数和QQ软件的覆盖率,推广一项产品(比如:Silverlight)恐怕也是国内最有效、最有针对性的!” WebQQ是Web2.0的催生产物,腾讯也看到了SNS产业上的巨大市场,凭借中国的产业龙头地位,怎能不趁机肆虐一把,呵呵。

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号