Dev C++ 隐藏控制台

控制台有时是无用的,这里提供了多种隐藏它的方法:

1.预编译命令

在源文件开头添一行:

#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" ) 

这个命令有些地方包括Dev C++是不行的,于是还有第二种:

2.FindWindow+ShowWindow

这个方法很流行:

#include <windows.h>
int main()
{
	HWND hwnd;
	hwnd=FindWindow("ConsoleWindowClass",NULL);	//获取窗口句柄
	if(hwnd)	//如果找到了
	{
		ShowWindow(hwnd,SW_HIDE);	//隐藏之
	}
	MessageBox(NULL,"The Console has been hidden!","HiddingSuccess",MB_ICONINFORMATION);//提示
	return 0;
} 

解析:
1.FindWindow
FindWindow可以用窗口的类名或标题来获取窗口句柄,成功率很高。
函数原型:

HWND WINAPI FindWindow(LPCSTR lpClassName,LPCSTR lpWindowName);

一目了然,第一个参数是类名,第二个参数是窗口标题名。
如果只知道一个参数,另一个参数则可以填NULL.

2.ShowWindow
它用于改变窗口的显示状态,包括SW_SHOW(显示),SW_HIDE(隐藏).

BOOL WINAPI ShowWindow(HWND hWnd, int nCmdShow);

这种方法有一点不足就是运行时控制台框框会一闪而过,还是能看见 :(
然后就发现了一种不错的方法:

3.编译设置

(一)
打开编译器的设置,找到加入命令(给gcc/g++的),
(Dev C++:工具–>编译选项–>第一个框框里)
输入-mwindows:
-mwindows
按 确定。
运行你的程序,一点控制台的痕迹都没有。
(二)
Dev C++还有一种方法:
打开 工具–>编译选项–>代码生成/优化–>连接器–>不产生控制台窗口
调为Yes,按 确定 即可。
Hide console

发布了8 篇原创文章 · 获赞 1 · 访问量 1097

猜你喜欢

转载自blog.csdn.net/cjz2005/article/details/104362669