python 通过句柄获取窗口内容

-- enoding:utf-8 --

生成 buffer 对象

import win32con
from win32gui import PyMakeBuffer, SendMessage, PyGetBufferAddressAndLen, PyGetString

length = 10000

hWnd=68214

hWnd=68302

buf = PyMakeBuffer(length)
length2 = SendMessage(hWnd, win32con.WM_GETTEXT, length, buf)+1
print(length2)
buf = PyMakeBuffer(length2)
print('get: ', SendMessage(hWnd, win32con.WM_GETTEXT, length2, buf))

address, length = PyGetBufferAddressAndLen(buf)
text = PyGetString(address, length)

print('text: ', text)

转载于:https://www.cnblogs.com/yubs/p/10916389.html

  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要根据窗口句柄获取窗口的分辨率,您可以使用`win32api`库和`win32gui`库来实现。以下是一个示例代码: ```python import win32api import win32gui def get_window_resolution_by_handle(hwnd): # 获取窗口的设备上下文 hdc = win32gui.GetDC(hwnd) # 获取窗口的宽度和高度 width = win32api.GetDeviceCaps(hdc, win32api.HORZRES) height = win32api.GetDeviceCaps(hdc, win32api.VERTRES) return width, height if __name__ == '__main__': # 假设窗口句柄为1234 hwnd = 1234 # 获取窗口分辨率 resolution = get_window_resolution_by_handle(hwnd) print("窗口分辨率:", resolution[0], "x", resolution[1]) ``` 在上面的代码中,我们导入了`win32api`和`win32gui`模块。 然后,我们定义了一个名为`get_window_resolution_by_handle()`的函数,它接受窗口句柄作为参数。在函数内部,我们使用`GetDC()`函数获取窗口的设备上下文。 接下来,我们使用`GetDeviceCaps()`函数获取窗口的宽度和高度,分别使用`HORZRES`和`VERTRES`参数。 最后,我们返回窗口的宽度和高度。 在主程序中,我们假设窗口句柄为1234,并调用`get_window_resolution_by_handle()`函数来获取窗口的分辨率。然后,我们打印出分辨率的宽度和高度。 请注意,窗口句柄是一个唯一标识窗口的整数值。您可以使用`win32gui`库的`FindWindow()`或`FindWindowEx()`函数来获取窗口句柄。 希望这个示例能帮助您根据窗口句柄获取窗口的分辨率!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值