MFC debug的時候可以用代碼關閉線程 但是編譯出來直接執行不可以

問題描述:

Debug的時候,F5 運行,可以使用如下代碼關閉線程,但是直接雙擊運行不可以。


//////////////////////////////////////////////////////////////////////////////////

DWORD processID;

DWORD pID;

DWORD exit;


HWND = ::FindWindow(NULL,"target");//尋找名字爲target的窗口

if(hWnd != NULL)

{

    TRACE("找到窗口了\n");

    processID = GetWindowProcessId(hWnd,&pID);

   HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS,FALSE,pID);

   GetExitCodeProcess(hProcess,&exit);

   TerminateProcess(hProcess,exit);

}

//////////////////////////////////////////////////////////////////////////////////



原因是:debug的權限比較大,可以使用

Project->Properties->Linker->Manifest File下UAC Execution Level改成requireAdministrator,這樣你的程序就有了管理員權限


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