-
Notifications
You must be signed in to change notification settings - Fork 15
/
Copy pathmain.py
38 lines (29 loc) · 1.12 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
from time import sleep
import win32gui, win32ui, win32con, win32api
def main():
window_name = "Untitled - Notepad"
hwnd = win32gui.FindWindow(None, window_name)
hwnd = get_inner_windows(hwnd)['Edit']
win = win32ui.CreateWindowFromHandle(hwnd)
#win.SendMessage(win32con.WM_CHAR, ord('A'), 0)
#win.SendMessage(win32con.WM_CHAR, ord('B'), 0)
#win.SendMessage(win32con.WM_KEYDOWN, 0x1E, 0)
#sleep(0.5)
#win.SendMessage(win32con.WM_KEYUP, 0x1E, 0)
win32api.SendMessage(hwnd, win32con.WM_KEYDOWN, 0x41, 0)
sleep(0.5)
win32api.SendMessage(hwnd, win32con.WM_KEYUP, 0x41, 0)
def list_window_names():
def winEnumHandler(hwnd, ctx):
if win32gui.IsWindowVisible(hwnd):
print(hex(hwnd), '"' + win32gui.GetWindowText(hwnd) + '"')
win32gui.EnumWindows(winEnumHandler, None)
def get_inner_windows(whndl):
def callback(hwnd, hwnds):
if win32gui.IsWindowVisible(hwnd) and win32gui.IsWindowEnabled(hwnd):
hwnds[win32gui.GetClassName(hwnd)] = hwnd
return True
hwnds = {}
win32gui.EnumChildWindows(whndl, callback, hwnds)
return hwnds
main()