【问题标题】:python FindWindow by hex valuepython FindWindow 按十六进制值
【发布时间】:2022-12-22 12:25:17
【问题描述】:

我运行此代码并获得所有窗口的列表作为回报。

def winEnumHandler(hwnd, ctx):
    if win32gui.IsWindowVisible(hwnd):
        # print(hex(hwnd), win32gui.GetWindowText(hwnd))
        print(
            "{:} - [{:}] - {:}".format(hex(hwnd), win32gui.GetWindowText(hwnd),
                                       hex(win32gui.GetWindowLong(hwnd,
                                                                  win32con.GWL_EXSTYLE))))

结果:0x306be - [计算器] - 0x200100

现在我正在尝试运行:

window = win32gui.FindWindow(None, 0x306be)

它没有通过十六进制值找到它。有没有办法使用0x306be要么0x200100找到窗口?我有几个同名的窗口,除了使用其中一个值之外,我不确定如何让它找到正确的窗口。

【问题讨论】:

    标签: python hex findwindow


    【解决方案1】:

    通过将 hwnd 中的整数转换为十六进制值,您得到了 0x306be,这是 win32gui.findWindow() 无法读取的。但是它可以读取整数,因此您可以改用 hwnd。

    窗口 = win32gui.FindWindow(无,hwnd)

    【讨论】:

      猜你喜欢
      • 2018-07-26
      • 2013-01-18
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 1970-01-01
      • 2023-03-19
      • 2016-09-25
      相关资源
      最近更新 更多