【求助】AttachThreadInput 返回值爲0,GetLastError取得的錯誤碼爲5(訪問拒絕),怎麼解決啊

【求助】AttachThreadInput 返回值爲0,GetLastError取得的錯誤碼爲5(訪問拒絕),怎麼解決啊

    

    // 獲取創建前臺窗口的線程
    DWORD dwThread = GetWindowThreadProcessId(GetForegroundWindow(), NULL);
    // 將前臺窗口線程貼附到當前線程(也就是程序A中的調用線程)- 共享目標窗口的輸入隊列
    BOOL bRet = AttachThreadInput(dwThread, GetCurrentThreadId(), TRUE);
    if(bRet ==0) 
    {
        DWORD lastError = GetLastError();   //    查看錯誤碼是  5 - 拒絕訪問
        return;
    }
    // 獲取焦點窗口句柄
    HWND hFocus = GetFocus();
    // 解除貼附
    AttachThreadInput(dwThread, GetCurrentThreadId(), FALSE);
    // 發送消息
    PostMessage(hFocus, WM_KEYDOWN, VK_TAB, 0);


之前用這個邏輯一直好好的,直到碰到某一個產品

窗口類名是大名鼎鼎的   Chrome_WidgetWin_1

這個是Chrome UI框架的安全機制導致的麼,有沒有解決方法?


求大神支招

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章