注册 登录
编程论坛 C++教室

[讨论]通过VS的IDE启动控制台应用程序与双击启动的差别

Arcticanimal 发布于 2007-08-19 13:22, 1338 次点击
用过MS的VC应该都知道在IDE下用ctrl+F5 启动应用程序(控制台的),在运行结束后会自动的打印出 press any key to continue 然后等待用户按键结束.而双击启动就不会有这个暂停。这是很明显的一个差别,是什么原因呢?
今天为了测试一个网络应用程序写了一个简单的端口检测的控制台程序(release版本),在IDE下面ctrl+F5 运行一切正常,得到了正确的结果。然而单独把可执行文件复制出来双击运行就出现错误的结果,莫明其妙. 到底通过VS的IDE启动控制台应用程序与双击启动有什么区别呢?
附图: 1.正常截图
只有本站会员才能查看附件,请 登录

正常的运行是进入监听,并没有应用程序使用那个端口,因此一直挂起。

[此贴子已经被作者于2007-8-19 13:27:20编辑过]

2 回复
#2
未入流小菜鸟2007-08-19 14:34
只要在程序中加入System("pause")语句,就能达到打印出 press any key to continue 然后等待的效果。
pause其实是一条dos命令。
由此可以猜测,vc在IDE中run console application时,自动向控制台添加了这条命令,而直接双击运行则没有这一效果。
这和你的程序的运行结果不对,没有什么联系。
从截图上看不出原因来,不妨把你的代码放上来,大家一起分析下。
#3
Arcticanimal2007-08-19 15:10

换到vista系统下运行又正常了,一切OK !
几乎可以肯定不是代码的问题, 问题还是比较诡异...

1