目的:在一个登录对话框里自动填入已经写好的内容,实现自动登录我的思路:获取EDITTEXT ID-》SetDlgItemText
问题:
1.怎么找EDITTEXT的ID值?没有hDlgItem2.OD通过GetDlgItemText,GetWindowText下断,可以分析出hwnd,controlID,
但这个程序,在那两个API函数下断,运行时都没有中断,不知道怎么回事?3.如果此路不通,还有别的什么方法吗PS:菜鸟一个,分数不多,有理解不到的地方,还请高手们包涵指正 :(
问题:
1.怎么找EDITTEXT的ID值?没有hDlgItem2.OD通过GetDlgItemText,GetWindowText下断,可以分析出hwnd,controlID,
但这个程序,在那两个API函数下断,运行时都没有中断,不知道怎么回事?3.如果此路不通,还有别的什么方法吗PS:菜鸟一个,分数不多,有理解不到的地方,还请高手们包涵指正 :(
The GetDlgItemText function sends a WM_GETTEXT message to the control.
通过FindWindow,GetWindow,获取控件句柄,然后发送WM_SETTEXT 和 WM_GETTEXT 消息
两个都是空~
GetClassName(hWnd, pBuf, 128);
dwStyle = GetWindowLong( hWnd, GWL_STYLE);
所以思路就是千方百计得到它的句柄
如果这个程序是你编的,多设置一个全局变量存放这个句柄就好了
如果不是,你就要自己找到这个句柄,方法很多,比如遍历所有的子窗口句柄,判断哪个符合你要的窗口特征不过我有个问题,不知道你要这个ID干吗。编译出来的程序一般一个子窗口ID是固定的,因为许多人在建立这个窗口时传递的ID参数是个常量。什么意思,如果这个程序不是你自己编的,你又要获得它的ID,可以直接通过第三方软件查看它的ID,比如spy++,与句柄不同,一般情况下每次它的ID都是一样的
这个ID你拿来直接用就好了
可惜没分了~先自己琢磨下,再弄点分把不懂的全发上来,呵呵
结贴了,谢谢各位大虾的指点~