我試圖隱藏控制檯窗口我Ç應用這個簡單WinAPI的代碼空空時:如何使用WinAPI隱藏控制檯窗口?
#define CONSOLE_NAME "6FD66E14-FF0F-4B94-B8AF-AFE3D42DC399"
void hide_window(void)
{
// Ставим заголовок для консольного окна/Setting window caption
SetConsoleTitle(TEXT(CONSOLE_NAME));
// Находим по заголовку Handle для окна/Searching Handle of the window
HWND hWnd = FindWindow(NULL, TEXT(CONSOLE_NAME));
if (hWnd == 0)
{
ErrorExit(TEXT("FindWindow"));
}
// Скрываем консоль/Hidding console
ShowWindow(hWnd, SW_HIDE);
}
int _tmain(int argc, _TCHAR* argv[])
{
hide_window();
/* other code */
}
一切工作正常,如果沒有反病毒程序被激活,但是當卡巴斯基運行並監視系統,我不能得到上面的代碼工作,因爲hWnd == 0
爲真,並且GetLastError()
= 183 error(「當該文件已存在時無法創建文件。」「)lauched!
問題:我能做什麼?我需要的只是隱藏該控制檯窗口。
請幫助我這個東西。
非常感謝!
PS。使用Visual Studio 2010(Visual C++)
如果刪除控制檯不是一個選項,也許你可以嘗試EnumWindows(),看看它是否給運行防病毒廢話不同的結果? – Lundin 2011-05-23 14:26:21