FindWindow使用方法_find do

FindWindow使用方法_find do查找指定窗口 TCHARszTitle[MAX_PATH]={0}; HWNDhwnd=::FindWindow(TEXT(“#32770”),TEXT(“飞鸽传书IPMessenger”)); if(hwnd!=NULL) { //修改窗口标题 ::SetW…

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

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

查找指定窗口								
								
TCHAR szTitle[MAX_PATH] = {0};								
HWND hwnd = ::FindWindow(TEXT("#32770"),TEXT("飞鸽传书  IP Messenger"));								
if(hwnd != NULL)								
{								
	//修改窗口标题							
	::SetWindowText(hwnd,"新的窗口标题");							
}								
else								
{								
	::MessageBox(NULL,TEXT("窗口没有找到"),TEXT("[ERROR]"),MB_OK);							
}								
								
								
窗口控制								
								
TCHAR szTitle[MAX_PATH] = {0};								
HWND hwnd = ::FindWindow(TEXT("#32770"),TEXT("飞鸽传书  IP Messenger"));								
if(hwnd != NULL)								
{								
	typedef void (WINAPI *PSWITCHTOTHISWINDOW) (HWND,BOOL);							
	PSWITCHTOTHISWINDOW SwitchToThisWindow;							
	HMODULE hUser32=LoadLibrary("user32.dll");							
	SwitchToThisWindow=(PSWITCHTOTHISWINDOW)GetProcAddress(hUser32,"SwitchToThisWindow");							
								
	//切换窗口							
	SwitchToThisWindow(hwnd,false);							
								
	Sleep(3000);							
	//关闭窗口 							
	::SendMessage(hwnd,WM_CLOSE,0,0);							
}								
else								
{								
	::MessageBox(NULL,TEXT("窗口没有找到"),TEXT("[ERROR]"),MB_OK);							
}								

查找子窗口								
								
TCHAR szTitle[MAX_PATH] = {0};								
HWND hwnd = ::FindWindow(TEXT("#32770"),TEXT("飞鸽传书  IP Messenger"));								
if(hwnd != NULL)								
{								
	//查找子窗口							
	HWND hEdit = FindWindowEx(hwnd,NULL,"Edit","");							
	//设置标题							
	::SetWindowText(hEdit,"文本框新的标题");							
	//修改内容							
	::SendMessage(hEdit,WM_SETTEXT,0,(LPARAM)"新的内容");							
}								
else								
{								
	::MessageBox(NULL,TEXT("窗口没有找到"),TEXT("[ERROR]"),MB_OK);							
}								
								
								
TCHAR szTitle[MAX_PATH] = {0};								
HWND hwnd = ::FindWindow(TEXT("#32770"),TEXT("飞鸽传书  IP Messenger"));								
if(hwnd != NULL)								
{								
	//查找子窗口							
	HWND hEdit =::GetDlgItem(hwnd,0x3E9);							
	//获取内容							
	::SendMessage(hEdit,WM_GETTEXT,MAX_PATH,(LPARAM)szTitle);							
	//修改内容							
	::SendMessage(hEdit,WM_SETTEXT,0,(LPARAM)"新的内容");							
}								
else								
{								
	::MessageBox(NULL,TEXT("窗口没有找到"),TEXT("[ERROR]"),MB_OK);							
}								
//
枚举子窗口								
								
BOOL CALLBACK EnumChildProc(HWND hWnd,LPARAM lParam)  								
{  								
    TCHAR szTitle[MAX_PATH] = {0};								
    ::GetWindowText(hWnd,szTitle,MAX_PATH); 								
    MessageBox(NULL,szTitle,"[子窗口]",MB_OK);  								
    return true;  								
}  								
								
VOID EnumChildWindow()								
{								
	TCHAR szTitle[MAX_PATH] = {0};							
	HWND hWnd = ::FindWindow(TEXT("#32770"),TEXT("飞鸽传书  IP Messenger"));							
	if(hWnd != NULL)							
	{							
		::EnumChildWindows(hWnd,EnumChildProc,0);  						
	}							
	else							
	{							
		::MessageBox(NULL,TEXT("窗口没有找到"),TEXT("[ERROR]"),MB_OK);						
	}							
}								
/
枚举所有打开窗口						
						
BOOL CALLBACK EnumOpenWindowProc(HWND hWnd,LPARAM lParam)  						
{  						
    TCHAR szTitle[MAX_PATH] = {0};						
    ::GetWindowText(hWnd,szTitle,MAX_PATH); 						
    MessageBox(NULL,szTitle,"[窗口]",MB_OK);  						
    	if(strcmp(szTitle,"飞鸽传书  IP Messenger") == 0)					
	{					
		MessageBox(NULL,szTitle,"[窗口]",MB_OK);  				
		return FALSE;				
	}					
    return TRUE;  						
}  						
VOID EnumOpenWindows()						
{						
	EnumWindows(EnumOpenWindowProc,NULL);					
}						
/
隐藏控制台	
	
#pragma   comment(linker,"/subsystem:\"windows\"  /entry:\"mainCRTStartup\""   ) 	
	
模拟鼠标单击	
	
	
TCHAR szTitle[MAX_PATH] = {0};	
RECT r;	
HWND hwnd = ::FindWindow(TEXT("#32770"),TEXT("飞鸽传书  IP Messenger"));	
if(hwnd != NULL)	
{	
	HWND hButton = FindWindowEx(hwnd,NULL,"Button","刷新(&R)");
	
	//获取窗口坐标
	::GetWindowRect(hButton,&r);
	
	printf("%d %d",r.left,r.top);
	
	//设置鼠标的位置
	::SetCursorPos(r.left+10,r.top+10);
	Sleep(2000);
	//鼠标左键单击
	mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);//点下左键 
	mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);//松开左键
}	
else	
{	
	::MessageBox(NULL,TEXT("窗口没有找到"),TEXT("[ERROR]"),MB_OK);
}	
///
模拟键盘点击(搜索:键盘键与虚拟键码对照表)	
	
	
TCHAR szTitle[MAX_PATH] = {0};	
RECT r;	
HWND hwnd = ::FindWindow(TEXT("#32770"),TEXT("飞鸽传书  IP Messenger"));	
if(hwnd != NULL)	
{	
	//HWND hButton = FindWindowEx(hwnd,NULL,"Button","刷新(&R)");
	HWND hEdit =::GetDlgItem(hwnd,0x3E9);
	
	//获取窗口坐标
	::GetWindowRect(hEdit,&r);
	
	//设置鼠标的位置
	::SetCursorPos(r.left+1,r.top+1);
	Sleep(1000);
	
	//鼠标左键单击
	mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);//点下左键 
	mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);//松开左键
	
	//模拟键盘
	keybd_event(97,0,0,0);
	keybd_event(97,0,KEYEVENTF_KEYUP,0);
	Sleep(1000);
	keybd_event(66,0,0,0);
	keybd_event(66,0,KEYEVENTF_KEYUP,0);
	Sleep(1000);
	keybd_event(16,0,0,0);
	keybd_event(67,0,0,0);
	keybd_event(67,0,KEYEVENTF_KEYUP,0);
	keybd_event(16,0,KEYEVENTF_KEYUP,0);
	
}	
else	
{	
	::MessageBox(NULL,TEXT("窗口没有找到"),TEXT("[ERROR]"),MB_OK);
}	

 

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170225.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 整除计算器_整除

    整除计算器_整除原题链接这里所谓的“光棍”,并不是指单身汪啦~ 说的是全部由1组成的数字,比如1、11、111、1111等。传说任何一个光棍都能被一个不以5结尾的奇数整除。比如,111111就可以被13整除。 现在,你的程序要读入一个整数x,这个整数一定是奇数并且不以5结尾。然后,经过计算,输出两个数字:第一个数字s,表示x乘以s是一个光棍,第二个数字n是这个光棍的位数。这样的解当然不是唯一的,题目要求你输出最小的解。提示:一个显然的办法是逐渐增加光棍的位数,直到可以整除x为止。但难点在于,s可能是个非常大的数 ——

    2022年8月8日
  • wing是什么_数独算法代码

    wing是什么_数独算法代码原题链接设有 N×N 的方格图,我们在其中的某些方格中填入正整数,而其它的方格中则放入数字0。如下图所示:某人从图中的左上角 A 出发,可以向下行走,也可以向右行走,直到到达右下角的 B 点。在走过的路上,他可以取走方格中的数(取走后的方格中将变为数字0)。此人从 A 点到 B 点共走了两次,试找出两条这样的路径,使得取得的数字和为最大。输入格式第一行为一个整数N,表示 N×N 的方格图。接下来的每行有三个整数,第一个为行号数,第二个为列号数,第三个为在该行、该列上所放的数。行和列编号从

    2022年8月9日
  • spring InitializingBean

    spring InitializingBean

    2022年3月2日
  • js语法(1)_css语法

    js语法(1)_css语法js自动插入分号规则a.什么时候需要写分号什么时候不能写分号要有换行符,且下一个符号是不符合语法的,那么就尝试插入分号。有换行符,且语法中规定此处不能有换行符,那么就自动插入分号。源代码结束处,不能形成完整的脚本或者模块结构,那么就自动插入分号。noLineTerminatorhere规则表示它所在的结构中的这一位置不能插入换行符。带有标签的continue语句不能在continue后插入换行带标签的break语句不能在break后插入换行return后不能插入换行..

    2022年10月21日
  • 交流转直流降压、稳压电路「建议收藏」

    交流转直流降压、稳压电路「建议收藏」目录目录降压稳压原理图设计思路电路图及原件原理图理解成果展示降压稳压原理图桥式整流电容滤波电路(最常用电路,本博客电路):全波整流电容滤波电路:-二倍压整流电容滤波电路:设计思路电路图及原件原件:PCB洞洞板、220V~12V变压器、7805稳压管、二极管*4、1000uF电解电容、10uF电解电容*2、…

    2022年6月20日
  • JavaScript语言知识收藏

    接触Web开发也已经有一段时间了,对javascript的认识也比以前有了更加深入的认识了,所以觉得应该整理一下。一、JavaScript不支持函数(方法)的重载,用一个例子证明如下:function

    2021年12月20日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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