编程自动化
当音乐和传说在深夜中沉寂后,程序的每个字符还在跳动!
C++博客
首页
新随笔
联系
聚合
管理
随笔 - 224 文章 - 41 trackbacks - 0
<
2010年8月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
享受编程
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(11)
给我留言
查看公开留言
查看私人留言
随笔分类
(159)
android 开发(22)
boost(2)
c#开发(36)
c++经典文章转载(9)
linux(5)
python(1)
sql(2)
STL(2)
symbian开发(11)
ubuntu 编程(2)
visual studio(9)
WTL(2)
互联网(2)
计算机基本概念(2)
深入vc++(35)
生活(4)
数据库(4)
算法(8)
游戏(1)
随笔档案
(224)
2018年1月 (2)
2014年7月 (1)
2014年5月 (1)
2014年3月 (1)
2014年1月 (1)
2013年12月 (1)
2013年11月 (2)
2013年7月 (3)
2013年6月 (1)
2013年3月 (2)
2013年1月 (3)
2012年12月 (4)
2012年9月 (1)
2012年6月 (2)
2012年5月 (2)
2012年4月 (1)
2012年2月 (2)
2012年1月 (1)
2011年9月 (4)
2011年8月 (6)
2011年7月 (2)
2011年6月 (5)
2011年5月 (9)
2011年3月 (7)
2011年1月 (2)
2010年12月 (3)
2010年10月 (4)
2010年9月 (13)
2010年8月 (18)
2010年7月 (6)
2010年6月 (22)
2010年5月 (8)
2010年4月 (15)
2010年3月 (32)
2010年2月 (4)
2010年1月 (8)
2009年12月 (3)
2009年5月 (3)
2009年3月 (4)
2008年12月 (1)
2008年11月 (14)
文章分类
(2)
转载经典文章(2)
文章档案
(4)
2009年2月 (1)
2008年11月 (3)
经典c++博客
codeguru技术论坛
Nehe
vc技术论坛
谷歌代码搜索
刘未鹏c++的罗浮宫
那谁的技术博客
搜索
最新评论
1. re: 你应该知道的推荐算法--皮尔逊公式介绍和意义
鄂尔泰没看够
--是是是
2. re: 模拟iTunes的登陆,并获取用户的名称[未登录]
暗室逢灯
--123
3. re: 关于ios越狱开发的那些事--Theos开发[未登录]
我的8.3系统,安装成功,启动成功,就是没有弹出alertView
--1
4. re: 关于ios越狱开发的那些事--Theos开发
好强大..13年就如此强大,真是大神啊
--Mekor
5. re: 使用itms-services协议 在线安装 ipa支持ios7.1
评论内容较长,点击标题查看
--网络开发者
阅读排行榜
1. 如何注入代码到exe中使用OD进行操作(24519)
2. C#中跨线程操作控件 --- InvokeRequired 属性 与Invoke方法(21231)
3. 关于ios越狱开发的那些事--Theos开发(20689)
4. OpenResty的安装和在nginx中使用lua直接访问mysql达到数据接口的统一(17485)
5. android中使用adb shell命令kill掉应用程序(17081)
评论排行榜
1. vc/C++中使用网络校正系统时间(6)
2. 在MFC中用控制台显示输出内容(4)
3. 我的网络电台(3)
4. LibMMSeg 简介(转)(2)
5. unicode、utf-8、ansi的故事(2)
如何屏蔽控制台应用程序的窗口(转)
原文地址:
http://www.vckbase.com/bbs/prime/viewprime.asp?id=581
众所周知,控制台应用程序一般都会显示一个控制台窗口(虚拟DOS窗口),但很多时候控制台程序的执行逻辑根本不需要与用户进行交互,所以显示这个难看的窗口纯属多余,那么如何将它屏蔽掉呢?下面我向大家介绍一种方法。
操作系统装载应用程序后,做完初始化工作就转到程序的入口点执行。程序的默认入口点实际上是由连接程序设置的,不同的连接器选择的入口函数也不尽相同。在VC下,连接器对控制台程序设置的入口函数是 mainCRTStartup,mainCRTStartup 再调用你自己编写的 main 函数;对图形用户界面(GUI)程序设置的入口函数是 WinMainCRTStartup,WinMainCRTStartup 调用你自己写的 WinMain 函数。
具体设置哪个入口点是由连接器的“/subsystem:”选项参数确定的,它告诉操作系统如何运行编译生成的.EXE文件。可以指定四种方式:“CONSOLE|WINDOWS|NATIVE|POSIX”如果这个选项参数的值“WINDOWS”,则表示该应用程序运行时不需要控制台,有关连接器参数选项的详细说明请参考 MSDN 库。
下面我们将通过预编译指令来对编译器和连接器进行设置,从而达到我们的目的:例子代码运行后播放Windows系统启动声音三次,然后退出,运行后不会显示控制台窗口。
#include
"
stdafx.h
"
#include
<
windows.h
>
#include
<
mmsystem.h
>
#pragma comment(lib,
"
winmm.lib
"
)
//
告诉连接器与这个库连接,因为我们要播放多媒体声音
#pragma comment( linker,
"
/subsystem:\
"
windows\
"
/entry:\
"
mainCRTStartup\
""
)
//
设置连接器选项
int
main(
int
argc,
char
*
argv[])
{
PlaySound(
"
SystemStart
"
,NULL, SND_ALIAS
|
SND_SYNC);
Sleep(
50
);
PlaySound(
"
SystemStart
"
,NULL, SND_ALIAS
|
SND_SYNC);
Sleep(
50
);
PlaySound(
"
SystemStart
"
,NULL, SND_ALIAS
|
SND_SYNC);
Sleep(
50
);
return
0
;
}
很多人都说这个没有什么用,但在做OPENGL的时候,调试的时候可以在调试的时候让信息从控制台输出,而调试好了以后就可以不用控制台了!
posted on 2009-03-20 14:55
漂漂
阅读(337)
评论(0)
编辑
收藏
引用
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
网站导航:
博客园
IT新闻
BlogJava
博问
Chat2DB
管理