VS2019控制台程项目如何取消控制台弹出

简单讲,取消控制台弹出只需要两步【23-10-4实测有效】

1、属性页-连接器-入口点–输入:【mainCRTStartup】,意思是:告诉它从哪里执行呢,从显示的CRT的这个地方执行。

2、属性页-系统-子系统,将原来的控制台改为【窗口(/SUBSYSTEM:WINDOWS)】,选项告诉系统如何运行exe,从窗口开始运行,控制台就不会出来了。

再详细讲下知识点

windows的入口函数有两个,WinMain和wWinMainCRTStartup(窗口类的)。

在vc的编译系统中真正的入口函数是,wWinMainCRTStartup,然后才运行WinMain函数入口点。

一、从配置项里设置取消控制台弹出

1、属性页-连接器-入口点–输入:【mainCRTStartup】,意思是:告诉它从哪里执行呢,从显示的CRT的这个地方执行。

2、属性页居然可以查找,查找选项或开关编辑框内输入,子系统,搜出来的选项,将原来的控制台改为【窗口(/SUBSYSTEM:WINDOWS)】,意思是走的是窗口,而不是弹控制台出来了。

二、代码方式设置取消控制台弹出

由子系统和入口函数两个选项,不同组合可以组合出4种搭配。

//注意加空格,+空格+/entry
//1、子系统 窗口 + 入口 窗口入口
#pragma comment (linker,"/subsystem:windows /entry:wWinMainCRTStartup")//测试成功 没有控制台
//2、子系统 窗口 + 入口 命令行入口
#pragma comment (linker,"/subsystem:windows /entry:mainCRTStartup")//测试成功 没有控制台
//3、子系统 控制台 + 入口 命令行入口
#pragma comment (linker,"/subsystem:console /entry:mainCRTStartup")//测试成功 有控制台
//4、子系统 控制台 + 入口 窗口入口
#pragma comment (linker,"/subsystem:console /entry:wWinMainCRTStartup")//测试成功 有控制台

三、发现的问题

发现问题:配置项里入口点设置为WinMainCRTStartup 会报错,代码设置就不会出错,而且代码里设置弹出的控制台和配置项里弹出的控制台样式不一样!

最后找到原因,是函数错了前面少个w【wWinMainCRTStartup】

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值