你想做一个木马来查看别人的密码吧?
那个输入号码和输入密码的输入框类名是:edit
用SPY++找不到类名,但你可以自己编程找到它,有一个函数是用来返回当前窗口的句柄的。现在忘了,有时间咱们QQ上聊清楚。
QQ:80125199

解决方案 »

  1.   

    我不是想看别人的密码,我是想用编程的方法每次制动把密码打好,并给"登录"按钮发一个Click事件,可是QQ登录窗口的句柄用findwindow(null,"QQ用户登录")找不到。
      

  2.   

    WM_LBUTTONDOWN:
    SetCapture(hWnd);
    return 0;
    WM_LBUTTONUP:
    if(hWnd==GetCapture()) ReleaseCapture();
    retur 0;
    case WM_MOUSEMOVE:
    {
    if(hWnd==GetCapture())
    {
    POINT pt={LOWORD(lParam),HIWORD(lParam)};
    ClientToScreen(&pt);
    HWND h=WindowFromPoint(&pt);//获取当前Cursor下的窗口句柄.
    TCHAR szHwnd[30];
    int nLength=wsprintf(szHwnd,TEXT("0x%0.8x"),(LONG)h);
    HDC hdc=::GetDC(hWnd);
    TextOut(hdc,10,10,szHwnd,nLength);
    ::ReleaseDC(hWnd,hdc);
    }
    return 0;
    }
      

  3.   

    对,QQ的登录窗口标题实际是xxxxx,那行字确实是画上去的。
      

  4.   

    问题不难呀。
    HWND hwndParent = NULL;
    int nTryTimes = 0;
    while( !hwndParent && nTryTimes < 100 )//10秒还没起来就88了
    {
    Sleep(100);
    nTryTimes ++;
    hwndParent= ::FindWindow(NULL,"QQ用户登录");
    }
    SetActiveWindow();
    // ::SetForegroundWindow(hwndParent);
    // ::ShowWindow(hwndParent,SW_HIDE);
    HWND hCombo=::FindWindowEx(hwndParent,0,"ComboBox",NULL);//找到combobox
    HWND hEdit=::FindWindowEx(hwndParent,0,"Edit",NULL); //找到Edit
    // HWND hCheck=::FindWindowEx(hwndParent,0,"隐身登陆",NULL); //找到隐身登陆Check按钮
    HWND hLogon=::FindWindowEx(hwndParent,0,"Button","登陆");//找到登陆按钮(这个句柄我找不到)
    ::SendMessage(hCombo,CB_RESETCONTENT,0,0);//清除列表框中的内容
    // char user[50]="82008209";
    char *user=m_name.GetBuffer(m_name.GetLength());
    ::SendMessage(hCombo,CB_ADDSTRING,0,(LPARAM)user);
    ::SendMessage(hCombo,CB_SETCURSEL,0,(LPARAM)user);
    char* szEdit=m_password.GetBuffer(m_password.GetLength());
    ::SendMessage(hEdit,WM_SETTEXT,0,(LPARAM)szEdit);
    // ::SendMessage(hLogon,TB_PRESSBUTTON,0,0);
    // keybd_event(VK_RETURN,0,0,0);//按下ENTER键
    // keybd_event(VK_RETURN,0,KEYEVENTF_KEYUP,0);//放开ENTER键
    ::SendMessage(hwndParent,WM_COMMAND,IDOK,0);
    以上是我写的自动登陆QQ的代码