易语言寻找窗口发送消息源码
系统结构:调试输出文本,寻找指定窗口句柄,FindWindowA,FindWindowExA,GetClassNameA,GetParent,GetWindow,GetWindowTextA,GetDesktopWindow,GetDlgItem,发送消息,
======窗口程序集1
| |
| |------ __启动窗口_创建完毕
| |
| |------ 调试输出文本
| |
| |------ 寻找指定窗口句柄
| |
| |
======调用的Dll
| |
| |---[dll]------ FindWindowA
| |
| |---[dll]------ FindWindowExA
| |
| |---[dll]------ GetClassNameA
| |
| |---[dll]------ GetParent
| |
| |---[dll]------ GetWindow
| |
| |---[dll]------ GetWindowTextA
| |
| |---[dll]------ GetDesktopWindow
| |
| |---[dll]------ GetDlgItem
| |
| |---[dll]------ 发送消息
调用的DLL命令:
.DLL命令 FindWindowA, 整数型, "user32", "FindWindowA", , 寻找窗口列表中第一个符合指定条件的顶级窗口(在vb里使用:FindWindow最常见的一个用途是获得ThunderRTMain类的隐藏窗口的句柄;该类是所有运行中vb执行程序的一部分。获得句柄后,可用api函数GetWindowText取得这个窗口的名称;该名也是应用程序的标题) 找到窗口的句柄。如未找到相符窗口,则返回零。会设置GetLastError
.参数 窗口类名, 文本型, , 指向包含了窗口类名的空中止(C语言)字串的指针;或设为零,表示接收任何类
.参数 窗口文本, 文本型, , 指向包含了窗口文本(或标签)的空中止(C语言)字串的指针;或设为零,表示接收任何窗口标题 示例Dim hw&, cnt&Dim rttitle As * 256hw& = FindWindow("ThunderRT5Main", vbNullString) ' ThunderRTMain under VB4cnt = GetWindowText(hw&, rttitle, 255)MsgBox Left, 0, "RTMain title";
.DLL命令 FindWindowExA, 整数型, "user32", "FindWindowExA", , 在窗口列表中寻找与指定条件相符的第一个子窗口 找到的窗口的句柄。如未找到相符窗口,则返回零。会设置GetLastError
.参数 窗口句柄1, 整数型, , 在其中查找子的父窗口。如设为零,表示使用桌面窗口(通常说的顶级窗口都被认为是桌面的子窗口,所以也会对它们进行查找)
.参数 窗口句柄2, 整数型, , 从这个窗口后开始查找。这样便可利用对FindWindowEx的多次调用找到符合条件的所有子窗口。如设为零,表示从第一个子窗口开始搜索
.参数 欲搜索的类名1, 文本型, , 欲搜索的类名。零表示忽略
.参数 欲搜索的类名2, 文本型, , 欲搜索的类名。零表示忽略;
.DLL命令 GetClassNameA, 整数型, "user32", "GetClassNameA", , 为指定的窗口取得类名 以字节数表示的类名长度;排除最后的空中止字符。零表示出错。会设置GetLastError
.参数 窗口句柄, 整数型, , 欲获得类名的那个窗口的句柄
.参数 缓冲区, 文本型, , 随同类名载入的缓冲区。预先至少必须分配nMaxCount+1个字符
.参数 缓冲区长度, 整数型, , 由lpClassName提供的缓冲区长度;
.DLL命令 GetParent, 整数型, "user32", "GetParent", , 判断指定窗口的父窗口 父窗口的句柄。如窗口没有父,或遇到错误,则返回零。会设置GetLastError
.参数 窗口句柄, 整数型, , 欲测试的窗口的句柄;
.DLL命令 GetWindow, 整数型, "user32", "GetWindow", , 获得一个窗口的句柄,该窗口与某源窗口有特定的关系 由wCmd决定的一个窗口的句柄。如没有找到相符窗口,或者遇到错误,则返回零值。会设置GetLastError
.参数 源窗口, 整数型, , 源窗口
.参数 关系, 整数型, , 指定结果窗口与源窗口的关系,它们建立在下述常数基础上:;GW_CHILD:寻找源窗口的第一个子窗口;GW_HWNDFIRST:为一个源子窗口寻找第一个兄弟(同级)窗口,或寻找第一个顶级窗口;GW_HWNDLAST:为一个源子窗口寻找最后一个兄弟(同级)窗口,或寻找最后一个顶级窗口;GW_HWNDNEXT:为源窗口寻找下一个兄弟窗口;GW_HWNDPREV:为源窗口寻找前一个兄弟窗口;GW_OWNER:寻找窗口的所有者;
.DLL命令 GetWindowTextA, 整数型, "user32", "GetWindowTextA", , 取得一个窗体的标题(caption)文字,或者一个控件的内容(在vb里使用:使用vb窗体或控件的caption或text属性) 复制到lpString的字串长度;不包括空中止字符。会设置GetLastError
.参数 窗口句柄, 整数型, , 欲获取文字的那个窗口的句柄
.参数 缓冲区, 文本型, , 预定义的一个缓冲区,至少有cch+1个字符大小;随同窗口文字载入
.参数 缓冲尺寸, 整数型, , lp缓冲区的长度;
.DLL命令 GetDesktopWindow, 整数型, "user32", "GetDesktopWindow", , 获得代表整个屏幕的一个窗口(桌面窗口)句柄 桌面窗口的句柄
.DLL命令 GetDlgItem, 整数型, "user32.dll", "GetDlgItem"
.参数 父窗口句柄, 整数型
.参数 控件标识, 整数型
.DLL命令 发送消息, 整数型, "user32", "SendMessageA", , 调用一个窗口的窗口函数,将一条消息发给那个窗口。除非消息处理完毕,否则该函数不会返回。SendMessageBynum, ; SendMessageByString是该函数的“类型security”声明形式 由具体的消息决定
.参数 窗口句柄, 整数型, , 要接收消息的那个窗口的句柄
.参数 信息值, 整数型, , 消息的标识符
.参数 参数一, 整数型, , 具体取决于消息
.参数 参数二, 文本型, , 具体取决于消息;
易语言VB2易V0009源码,转换VB函数,删除函数编辑框空行,删除编辑框空行,转换VB函数_2,转换VB常数,转换VB自定义数据类型,转换VB子程序,转换VB全局变量,转换VB局部变量,子程序1,转换VB函数2...
易语言-正文提取源码,正文提取,特殊字符过滤,取汉字个数_正则法,标准清除HTML标签,纯净清除HTML标签...
易语言SendInput源码,SendInput,模拟键盘_,模拟鼠标移动_,模拟鼠标单击_,SendUnicode,SendAnsi,SendKeyS,取变量地址_字节集型_,指针到短整数_,字节集到短整数_,AnsiToUnicode,模拟键盘动作_,模拟鼠标动作_,VkKeyScanW,GetKeyState,RtlInitAnsiString,RtlFreeU...
易语言SDK窗口源码,SDK窗口,WndProc,子程序_菜单初始化,HIWORD,LOWORD,子程序_处理命令消息,GetModuleHandle,LoadIcon,LoadCursor,GetStockObject,RegisterClass,MessageBox,CreateWindowEx,ShowWindow,UpdateWindow,GetMessage,TranslateMessage,DispatchMes...
易语言API创建暂停进程进行DLL注入源码,API创建暂停进程进行DLL注入,GetCmdLine,命令行缓冲区_,取文本内容长度_,CopyMemory,SN_CreateProcessA,SN_InjectDllA...
易语言api创建多层目录源码,api创建多层目录,api_创建多层目录...
易语言高斯算法源码,高斯算法...
易语言高斯赛德尔迭代法演示源码,高斯赛德尔迭代法演示,DBLX...
易语言雪花屏保源码,雪花屏保,Rnd,InitP,GetContrast,GetDC,GetPixel,SetPixel,ReleaseDC,InvalidateRect...