我写了一个代码,可以从我想要的任何程序中获取 HWND。如果你问的话,这就是我得到 hwnd 的方式。
以下代码应调出设备管理器并将向下箭头发送到程序。
但它确实。它确实会调出设备管理器,但它不会向程序发送向下箭头键,至少没有任何反应。
如果我使用记事本窗口的 hwnd 代码更改 hwndMain 编号,该代码会起作用并发送向下箭头键
import win32api
import win32con
import win32gui
import time
hwndMain = 133082
hwndChild = win32gui.GetWindow(hwndMain, win32con.GW_CHILD)
win32gui.SetForegroundWindow(hwndMain)
time.sleep(1)
win32api.SendMessage(hwndChild, win32con.WM_CHAR, 0x28, 0)
Run Code Online (Sandbox Code Playgroud)
编辑
我试过了
win32api.SendMessage(hwndChild, win32con.WM_CHAR, win32con.WM_KEYDOWN, 0)
Run Code Online (Sandbox Code Playgroud)
代替
win32api.SendMessage(hwndChild, win32con.WM_CHAR, 0x28, 0)
Run Code Online (Sandbox Code Playgroud)
但这也行不通。
我在 python 2.7