WM_GETTEXT没有从Window中检索文本

时间:2015-03-21 12:14:03

标签: c++ sendmessage

我设置了一个钩子并使用CBTProc函数来监控窗口活动,然后使用SendMessage调用WM_GETTEXT来获取窗口文本。

 LRESULT CALLBACK CBTProc (int nCode, WPARAM wParam, LPARAM lParam)
{
    std::ofstream out("C:\\Users\\John\\Desktop\\temp.txt", std::ios::app);
    CBTACTIVATESTRUCT *act = (CBTACTIVATESTRUCT *) lParam;

     HWND hWnd = (HWND) wParam;
     TCHAR wnd_title[1000];
    if(nCode == HCBT_ACTIVATE)
    {
         SendMessage(hWnd, WM_GETTEXT, sizeof(wnd_title), LPARAM(wnd_title));
         out << "Processor: " << wnd_title << "\n";

    }
    out.close();
    return CallNextHookEx(hhkCBT, nCode, wParam, lParam);
}

但是,它不会从记事本,Microsoft Word等过程中打印出文本。

我试图检索活动/聚焦窗口的窗口标题并将其打印出来。关于如何做到这一点的任何提示?

我尝试过GetWindowText,但这也不起作用。

0 个答案:

没有答案