我想从行者外挂的交易窗口(Class:#32770[Dialog])中的列表(SysListView)中提取出信息。
请问,要怎么样做?需要得到列表的句柄吗?请指教

解决方案 »

  1.   

    BOOL GetStore () 
    {
    HWND hTrade ;
    //找到交易窗口
    //遍历#32770类窗口,提取窗口标题
    if ( (hTrade = FindWindow("#32770", NULL)) != NULL )
    {
    LPTSTR lpCap ;
    GetWindowText(hTrade, lpCap, NULL);
    MessageBox(0,TEXT(lpCap),"窗口标题",0);
    SendMessage(hTrade,WM_CLOSE,0,0); //关闭以验证句柄正确性
    return 0 ;
    }
    }
      

  2.   

    HWND FindWindow(
      LPCTSTR lpClassName,  // pointer to class name
      LPCTSTR lpWindowName  // pointer to window name
    );int GetWindowText(
      HWND hWnd,        // handle to window or control with text
      LPTSTR lpString,  // address of buffer for text
      int nMaxCount     // maximum number of characters to copy
    );我看了一下,应该是你的参数设置有问题
      

  3.   


    ///////////////////////
    // 获取商店信息
    ///////////////////////
    BOOL GetStore () 
    {
    HWND hTrade, hList;
    //找到交易窗口
    //遍历#32770类窗口,提取窗口标题
    if ( (hTrade = FindWindow("#32770", NULL)) != NULL )
    {
    LPTSTR lpCap = NULL ;
    GetWindowText(hTrade, lpCap, 100);
    hList = FindWindowEx(hTrade, NULL, "SysListView32", NULL);
    MessageBox(0,TEXT(lpCap),"窗口标题",0);
    SendMessage(hTrade,WM_CLOSE,0,0); //关闭以验证句柄正确性
    return 0 ;
    }
    return 1 ;
    }
    初始化 LPTSTR lpCap = NULL ; 后
    现在没报错误了,但lpCap显示为空?是什么原因?
      

  4.   

    ///////////////////////
    // 获取交易信息
    ///////////////////////
    BOOL GetStore () 
    {
    HWND hTrade, hList;
    //找到交易窗口
    //遍历#32770类窗口,提取窗口标题
    if ( (hTrade = FindWindow("#32770", NULL)) != NULL )
    {
    //LPTSTR lpCap = NULL ;
    TCHAR lpCap[256] = {0}; GetWindowText ( hTrade, lpCap, sizeof(lpCap) );
    hList = FindWindowEx (hTrade, NULL, "SysListView32", NULL);
    MessageBox ( 0, lpCap, "窗口标题", 0 );
    SendMessage ( hTrade, WM_CLOSE, 0, 0 ); //关闭以验证句柄正确性
    return 0 ;
    }
    return 1 ;
    }
    OK成功了在CSDN中查到了,呵呵。