跳到主要内容

GetWindowInfo 获得窗口信息

🎯功能

获得窗口信息。

📜语法

Info = Plugin.WndEx7_71.GetWindowInfo(窗口句柄, 信息代码)

📥参数

参数数据类型解释
窗口句柄长整型数要获取信息的窗口句柄
信息代码长整型数根据信息代码的取值不同,从函数返回值可获得不同的窗口信息。
参数2(信息代码)可取以下值
信息代码说明
0获得窗口标题。返回值为字符串。相关函数: SetWindowText
1获得窗口类名。返回值为字符串。
2获得窗口边框范围。获得的是屏幕坐标。返回值为一维数组,分别表示左上角横坐标、左上角纵坐标、右下角横坐标、右下角角纵坐标。实际返回值的类型由本插件中的 SetArrayResultType 函数的设置决定。相关函数: SetWindowSizeMoveWindow
3获得客户区范围。获得的是屏幕坐标。返回值为一维数组,分别表示左上角横坐标、左上角纵坐标、右下角横坐标、右下角角纵坐标。实际返回值的类型由本插件中的 SetArrayResultType 函数的设置决定。相关函数: SetClientSize
4获得窗口ID。返回值为长整形数。相关函数: FindWindowIdSetWindowId
5获得窗口的线程ID。返回值为长整形数。
6获得窗口的进程ID。返回值为长整形数。
7获得窗口程序路径。返回值为字符串。
8获得窗口进程名(与任务管理器中进程选项卡的映像名称相同)。返回值为字符串。
9获得窗口坐标。如果该窗口是顶层窗口,获得的是屏幕坐标;如果该窗口是子窗口,获得的是父窗口的窗口客户区坐标。返回值为一维数组,分别表示左上角横坐标、左上角纵坐标。实际返回值的类型由本插件中的 SetArrayResultType 函数的设置决定。相关函数: MoveWindow
10获得窗口的进程是否64位进程。返回值为布尔值。
11获得窗口文本。返回值为字符串。多数情况下与获得窗口标题的结果相同,但有时不同,比如系统的文本框控件,它获得的是文本框内的文本。 相关函数: SetWindowText

📤返回

由参数2(信息代码)决定

💡示例

hwnd = Plugin.WndEx7_71.GetMousePointWindowS(1 Or 32)
WinCaption = Plugin.WndEx7_71.GetWindowInfo(hwnd,0)
WinClass = Plugin.WndEx7_71.GetWindowInfo(hwnd,1)
WinRect = Plugin.WndEx7_71.GetWindowInfo(hwnd,2)
ClientRect = Plugin.WndEx7_71.GetWindowInfo(hwnd,3)
WinID = Plugin.WndEx7_71.GetWindowInfo(hwnd,4)
TID = Plugin.WndEx7_71.GetWindowInfo(hwnd,5)
PID = Plugin.WndEx7_71.GetWindowInfo(hwnd,6)
ExePath = Plugin.WndEx7_71.GetWindowInfo(hwnd,7)
ProcessName = Plugin.WndEx7_71.GetWindowInfo(hwnd,8)
WinPos = Plugin.WndEx7_71.GetWindowInfo(hwnd,9)
MsgBox "目标窗口的窗口句柄:" & hwnd & vbCrLf & "窗口标题:" & WinCaption & vbCrLf & "窗口类名:" & WinClass & vbCrLf & "窗口边框范围:" & WinRect(0) & "," & WinRect(1) & "," & WinRect(2) & "," & WinRect(3) & vbCrLf & "客户区范围:" & ClientRect(0) & "," & ClientRect(1) & "," & ClientRect(2) & "," & ClientRect(3) & vbCrLf & "窗口ID:" & WinID & vbCrLf & "窗口的线程ID:" & TID & vbCrLf & "窗口的进程ID:" & PID & vbCrLf & "程序路径:" & ExePath & vbCrLf & "进程名:" & ProcessName & vbCrLf & "窗口坐标:" & WinPos(0) & "," & WinPos(1), 4096, "鼠标所指窗口信息"

📘备注