1.如何利用句柄操作windows窗体 首先,获得窗体的句柄 win32api.FindWindows() 第二,获得窗体中控件的id号,spy++ 第三,根据控件的ID获得控件的句柄(hwnd) GetDlgItem(hwnd,loginID) 最后,利用控件句柄进行操作 python可以通过win32api轻松获取控件的属性值 通过标签找到主窗口句柄,然后通过主句柄获取下属控件句柄 #-*- coding: utf-8 -*- ##设置编码方式 import win32api,win32gui,win32con label = 'tt' #此处假设主窗口名为tt hld = win32gui.FindWindow(None, label) if hld > 0: dlg = win32api.FindWindowEx(hld, None, 'Edit', None)#获取hld下第一个为edit控件的句柄 buffer = '0' *50 len = win32gui.SendMessage(dlg, win32con.WM_GETTEXTLENGTH)+1 #获取edit控件文本长度 win32gui.SendMessage(dlg, win32con.WM_GETTEXT, len, buffer) #读取文本 print buffer[:len-1] #虚拟鼠标点击按钮(或者回车) btnhld = win32api.FindWindowEx(hld, None,'Button', None) # win32gui.PostMessage(btnhld, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0) # win32gui.PostMessage(btnhld, win32con.WM_KEYUP, win32con.VK_RETURN, 0) win32gui.PostMessage(btnhld, win32con.WM_LBUTTONDOWN, win32con.MK_LBUTTON, 0) win32gui.PostMessage(btnhld, win32con.WM_LBUTTONUP, win32con.MK_LBUTTON, 0) #获取显示器屏幕大小 width = win32api.GetSystemMetrics(win32con.SM_CXSCREEN) height = win32api.GetSystemMetrics(win32con.SM_CYSCREEN)
浏览器密码控件操作
# coding=utf-8 import win32gui def CallBack(hwnd, hwnds):
print '%x' %w1hd # print '%x' %w2hd hwndChildList = {} for k,v in hwndChildList.items(): print len1
|
|