هذا مع معرفة الايدي الخاص بchild
import win32gui,win32con,win32ui,time #المكتبات المستخدمة
#اظهار جميع الصفحات و اسمائهم و الايدي الخاص بهم
def list_widndows(hwnd,ctx):
if win32gui.IsWindowVisible(hwnd):
print(hex(hwnd),win32gui.GetWindowText(hwnd))
win32gui.EnumWindows(list_widndows,None) #طباعة جميع النوافذ اسمائها و الايدي الخاص بها في الجهاز
hwnd=win32gui.FindWindow(None,"Untitled - Notepad")#اختيار النافذة الاساسية المحددة
print("this: ",hwnd)
time.sleep(2)#انتظار كم ثانية لتنفيذ المهام
hwndex=win32gui.FindWindowEx(hwnd,None,None,None)# تحديد child من النافذة الاسياسة
print("hwndex: ",hwndex)#معرفة الايدي الخاص بchild
# بعض البرامج يكون لها child لاستقبال المدخلات و ليس النافذة الاسياسية و هذا يأخذ child للارسال المدخلات
#بعض البرامج يتغير العنوان الخاص بها فنطبع رقم child و نستخدمه
win32gui.PostMessage(hwndex,win32con.WM_KEYDOWN,0x44,0)# ضغط حرف D يساوي 0x44 في virtual key code
win32gui.PostMessage(hwndex,win32con.WM_KEYUP,0x44,0)#رفع عن ضغط حرف D
win32gui.PostMessage(1443862,win32con.WM_KEYDOWN,0x44,0)# ضغط حرف D يساوي 0x44 في virtual key code بإستخدام الايدي الخاص بchild
win32gui.PostMessage(1443862,win32con.WM_KEYUP,0x44,0)#رفع عن ضغط حرف D