我试图隐藏控制台窗口当我的C使用这个简单的应用程序启动WinAPI code:
#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 错误 http://msdn.microsoft.com/en-us/library/ms681382%28v=vs.85%29.aspx ("当文件已存在时无法创建该文件。”)发射了!
问题:我能做什么?我所需要的只是隐藏该控制台窗口。
请帮我处理这些事情。
万分感谢!
附言。使用 Visual Studio 2010 (Visual C++)
只需致电FreeConsole()
摆脱它并且AllocConsole()
创建一个新的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)