我试图隐藏控制台窗口我Ç应用这个简单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