我想做个程序直接填写qq号码和密码,不太清楚怎么做?
HWND hQQ,hQQHM,hQQMM;
hQQ = NULL;
if (!IsWindow(hQQ))
{
hQQ = NULL;
do
{
hQQ = ::FindWindow("#32770", "QQ用户登录");
} while(hQQ == NULL );
if (hQQ != NULL)
{
::MessageBox(NULL,"GET QQ HWND",NULL,0);
}
::SetDlgItemText(hQQ,0x8A,"3111111");
}
我写的这个程序不行。其中hQQ为获得的qq登陆窗口的句柄。
HWND hQQ,hQQHM,hQQMM;
hQQ = NULL;
if (!IsWindow(hQQ))
{
hQQ = NULL;
do
{
hQQ = ::FindWindow("#32770", "QQ用户登录");
} while(hQQ == NULL );
if (hQQ != NULL)
{
::MessageBox(NULL,"GET QQ HWND",NULL,0);
}
::SetDlgItemText(hQQ,0x8A,"3111111");
}
我写的这个程序不行。其中hQQ为获得的qq登陆窗口的句柄。
void CLODlg::OnButton1()
{
// TODO: Add your control notification handler code here
char szText[256];
HWND hWnd=::FindWindow(NULL,"QQ用户登录");
if(hWnd==NULL)
{
MessageBox("你还没有登陆QQ!");
return;
} HWND hEdit = FindWindowEx(hWnd,NULL,"ComboBox",NULL);
::SendMessage(hEdit,WM_SETTEXT,0,((LPARAM)"1234567")); //设置QQ号码 HWND hDiaPass = ::FindWindowEx(hWnd,NULL,"#32770",NULL);
HWND hPass=::GetDlgItem(hDiaPass,0x3EA6);
::SendMessage(hPass,WM_CHAR,TCHAR('1'),0);
::SendMessage(hPass,WM_CHAR,TCHAR('2'),0);
::SendMessage(hPass,WM_CHAR,TCHAR('3'),0); //发送密码
HWND buton=::GetDlgItem(hWnd,0x3EA0); //0x3EA0为登陆按纽ID,SPY++可查到
::SendMessage(buton,BM_CLICK,0,0); //登陆
}
HWND hDiaPass = ::FindWindowEx(hWnd,NULL,"#32770",NULL);
HWND hPass=::GetDlgItem(hDiaPass,0x3EA6);
我用spy++只能看到密码框的类是"#32770",你是怎么知道密码输入框的id是0x3EA6的呢?