melo0129 2015-02-06 07:01 采纳率: 0%
浏览 1552

怎么获得IE状态栏的信息?

CWnd *ieWnd,*ieViewWnd,*ieStatusBar,*ieFrame ;
CString cs;

LPVOID pszText;
HANDLE  hProcess = NULL;
DWORD dwprocessId;
DWORD dwRdBytes,dwBufSize = 128;
TCHAR szText[128];
int n;

while(!(ieWnd = CWnd::FindWindow(_T("IEFrame"),NULL)));

while( !(ieFrame = CWnd::FromHandle(FindWindowEx(ieWnd->m_hWnd,NULL,_T("Frame Tab"),NULL))));

while( !(ieViewWnd = CWnd::FromHandle(FindWindowEx(ieFrame->m_hWnd,NULL,_T("TabWindowClass"),NULL))));

while( !(ieStatusBar = CWnd::FromHandle(FindWindowEx(ieViewWnd->m_hWnd,NULL,_T("msctls_statusbar32"),NULL))));



::GetWindowThreadProcessId(ieStatusBar->GetSafeHwnd(),&dwprocessId);
hProcess = ::OpenProcess(PROCESS_VM_OPERATION|PROCESS_VM_READ,FALSE,dwprocessId); 
if (hProcess == NULL )
    return;

pszText = ::VirtualAllocEx(hProcess,NULL,dwBufSize,MEM_COMMIT,PAGE_READWRITE); 
if (pszText == NULL) 
    return;

//发送消息
n = ieStatusBar->SendMessage(SB_GETTEXT,0,(LPARAM)pszText);

//获取信息  
ReadProcessMemory(hProcess,pszText,szText,128,&dwRdBytes);

AfxMessageBox(szText);

VirtualFreeEx(hProcess, pszText, 0, MEM_RELEASE);   

获取信息不对。。。
  • 写回答

1条回答 默认 最新

  • oyljerry 2015-02-09 23:55
    关注

    窗口句柄有没有找对?如果句柄不对,后面数据就会取到别的窗口。

    评论

报告相同问题?

悬赏问题

  • ¥20 易康econgnition精度验证
  • ¥15 线程问题判断多次进入
  • ¥15 msix packaging tool打包问题
  • ¥28 微信小程序开发页面布局没问题,真机调试的时候页面布局就乱了
  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致