首页
社区
课程
招聘
求助:获取对话框 的控件句柄
发表于: 2015-12-22 23:08 3545

求助:获取对话框 的控件句柄

2015-12-22 23:08
3545
【求助】对于一个打开的文件选择对话框,如何获取 “文件名”输入栏的 句柄? 因为我想让该栏获得焦点? 很急!~~~

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 288
活跃值: (212)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
2
用spy++查一下
2015-12-23 07:20
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
谢谢!我查到了,但是无法使用SetFocus让它获得焦点?不知为什么?
2015-12-23 08:20
0
雪    币: 89
活跃值: (71)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
先遍历所有窗口得到对话框句柄,
然后FindWindowEx获得控件句柄,
然后发送消息,WM_SETTEXT直接设置内容..
按钮发送BM_CLICK.
楼主你看如何.
给你贴一段radmin自动输入密码的代码参考一下.
我想应该是类似这样的吧...如果有错请楼下纠正一下.
HWND hMain =NULL;
HWND hPass,hOk;
HWND h = GetTopWindow(0 );
while ( h )
{
        char buf[1024];
        GetWindowText(h,buf,1024);
        string str = buf;
        if(str.find("Radmin 安全性")!=-1)
        {
                hMain = h;
                break;
        }
        h = GetNextWindow( h , GW_HWNDNEXT);
}
hPass = FindWindowEx(hMain,0,"EDIT",NULL);
hOk =   FindWindowEx(hMain,0,"BUTTON",NULL);
SendMessage( hPass,WM_SETTEXT,0,LPARAM("123456"));
SendMessage( hOk,BM_CLICK,0,0);
2015-12-23 08:53
0
游客
登录 | 注册 方可回帖
返回
//