|
|
用FindWindowEx找编辑框句柄,再用SendMessageA读取或设置文本。
例子代码:
.版本 2
.支持库 spec
.DLL命令 FindWindowEx, 整数型, "user32", "FindWindowExA", ,
.参数 hwndParent, 整数型
.参数 hwndChildAfter, 整数型
.参数 lpszClass, 文本型
.参数 lpszWindow, 文本型
.DLL命令 SendMessageA_文本, 整数型, "user32", "SendMessageA", ,
.参数 hwnd, 整数型
.参数 wMsg, 整数型
.参数 wParam, 整数型
.参数 lParam, 整数型
.DLL命令 SendMessageA_置文本, 整数型, "user32", "SendMessageA", ,
.参数 hwnd, 整数型
.参数 wMsg, 整数型
.参数 wParam, 整数型
.参数 lParam, 文本型
.子程序 取编辑框内容, 文本型
.参数 父窗口句柄, 整数型
.局部变量 编辑框句柄, 整数型
.局部变量 缓冲区, 文本型, , , 256字节
编辑框句柄 = FindWindowEx(父窗口句柄, 0, "Edit", 0)
SendMessageA_文本(编辑框句柄, 0x000D, 256, 取变量地址(缓冲区)) ' WM_GETTEXT
返回 (取文本左边(缓冲区, 寻找文本(缓冲区, 字符(0), , 假)))
.子程序 设置编辑框内容
.参数 父窗口句柄, 整数型
.参数 新内容, 文本型
.局部变量 编辑框句柄, 整数型
编辑框句柄 = FindWindowEx(父窗口句柄, 0, "Edit", 0)
SendMessageA_置文本(编辑框句柄, 0x000C, 0, 新内容) ' WM_SETTEXT
注意:如果目标窗口是其他进程,需先取窗口句柄(FindWindow或EnumWindows)。 |
|