目录

问题描述:

程序装载原理

如何设置程序入口点?

解决方法:

方法1:

方法2:


问题描述:

启动GUI应用程序,但是每次都启动dos窗口,dos窗口也可以叫做控制台、命令行窗口。

终极目标:启动GUI应用程序时,不要显示dos窗口/控制台窗口/命令行窗口。

程序装载原理

操作系统首先装载应用程序,然后初始化,最后转入到程序入口点执行。

程序的的默认入口点,由连接程序设置。

1.连接程序设置控制台程序入口函数是mianCRTStartup,mainCRStartup调用main.cpp中入口函数默认为mian()函数,也可以通过命令修改:

// 通过下面这句话将入口函数改成fn.
#pragma comment(linker, "/entry:fn") 

2. 连接程序对图形用户界面GUI程序设置的入口函数是WinMainCRTStartup,WinMainCRTStartup调用自己写的入口函数,就是main.cpp中的main()函数,或者其他设置的入口函数。

如何设置程序入口点?

具体设置那个入口点,有连接器的“/subsystem:"选项参数确定,”/subsystem:"告诉操作系统如何编译生成.exe文件。

/subsystem有四个选项:“CONSOLE|WINDOWS|NATIVE|POSIX"

WINDOS:则表示应用程序运行时不需要控制台。

解决方法:

方法1:

工程右键-【属性】-》【配置属性】-》【系统】-》【子系统】,设置为“Windows(/SUBSYSTEM:WINDOWS)。

方法2:

在main.cpp代码中插入代码:

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

Visual Studio GUI应用程序_弹出控制台窗口/命令行窗口/dos窗口问题解决相关推荐

  1. Visual Studio Code 打开程序文件中文乱码解决方法

    文章原始地址: http://feotech.com/?p=76 \ 使用Visual Studio Code打开程序文件后对应的中文乱码,造成这种现象的原因是文件的编码方式不同. 可以通过调整打开文 ...

  2. vs2017c语言一闪而逝6,Visual Studio IDE编写程序时不显示窗口或窗口一闪而逝的解决方法...

    这篇文章主要为大家详细介绍了Visual Studio IDE编写程序时不显示窗口或窗口一闪而逝的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 使用Visual Studio IDE编写 ...

  3. visual studio支持python吗_微软 Visual Studio Online 更新,更好地支持 Python 语言和 Docker...

    在 2019 年 11月,公开预览版的 Visual Studio Online 正式上线.时隔多月,微软又发布了 Visual Studio Online 的最新更新.Visual Studio O ...

  4. Win7运行程序时弹出“windows防火墙安全警报“的解决方法

    win7系统运行程序时经常弹出Windows安全警报,提示"Windows 防火墙已阻止程序的部分功能"到底怎么回事呢?其实这是防火墙为防止一些程序恶意访问网络而设定的,我们知道W ...

  5. win10c语言弹出框,win10系统启动程序时弹出异常代码c0000005的解决技巧

    我们在操作win10 64位系统电脑的时候,常常会遇到win10系统启动程序时弹出异常代码c0000005的问题,非常不方便.有什么办法可以永久解决win10系统启动程序时弹出异常代码c0000005 ...

  6. Visual Studio“无法启动程序”系统找不到指定文件

    Visual Studio"无法启动程序"系统找不到指定文件,并且打开debug发现里面生成的是exe.recipe 解决方法: 1.建立一个空项目 2.在解决方案资源管理器里面添 ...

  7. Qt 设置弹出控制台终端

    在 Qt 中开发程序,默认情况下使用的是集成的终端,那么,如果想要弹出控制台终端怎么办呢?执行步骤如下: (1)找到 Qt 最左侧的侧边栏,点击项目,如下所示: 图1 Qt 侧边栏 (2)点击项目后, ...

  8. win7自动弹出计算机硬盘窗口,Win7弹出“Windows检测到一个硬盘问题”窗口怎么关闭...

    win7系统遇到一件很奇怪的问题,Win7经常弹出"Windows检测到一个硬盘问题"窗口,怎么关闭?大部分是由于硬盘可能出现坏道引起的,如果不想更换硬盘,而此时系统也还能使用,那 ...

  9. java输入字符串异常_设计一个 Java 程序,自定义异常类,从命令行(键盘)输入一个字符串,如果该字符串值为“XYZ”。。。...

    设计一个 Java 程序,自定义异常类,从命令行(键盘)输入一个字符串,如果该字符串值为"XYZ",则抛出一个异常信息"This is a XYZ",如果从命令 ...

  10. Visual Studio 2015出现Cannot find one or more components. Please reinstall the application.的问题解决

    Visual Studio 2015出现Cannot find one or more components. Please reinstall the application.的问题解决 参考文章: ...

最新文章

  1. 设置UTL_FILE_DIR参数 使得数据库使用OS文件
  2. wxWidgets:wxWebView 示例
  3. 《城市建筑美学》读书笔记
  4. linux 4412跑程序,荣品4412的板子上跑纯linux
  5. 阿里99大促 | 模型识别背后的样本生成
  6. 使用Nginx配置NodeJs程序(Windows平台)
  7. 虚拟仿真引擎消息机制
  8. 《王者荣耀》回应故障:3个工作日内补发排位赛星积分丢失
  9. Marching Cubes
  10. 程序员每天晚上都去翻垃圾,竟然年入60万美元?
  11. H3C ipv6与ipv4(6to4)隧道实验
  12. 网络相关知识汇总链接
  13. 华为OSPF中silent-interface语句介绍
  14. 值得推荐的13款可视化软件,快收藏!
  15. 去掉GaussView启动警告窗口的办法
  16. FFmpeg 内存H264流发布rtmp
  17. 【路由器】OpenWrt 手动编译 ipk
  18. Mind+实例5——打地鼠游戏
  19. 超简单直观理解懒加载(Lazyload)
  20. 贴吧手工自动发帖软件

热门文章

  1. jdk6或者7Base64转码与解码
  2. 计算机组成与结构1800题,最新版数据结构1800题含完整答案详解
  3. 嘉明的C学习之Day8--数组
  4. 优惠券的工厂与策略模式实现方案
  5. python天下无敌表情包_这套打遍天下无敌手的“算我输”表情包 从哪儿蹦出来的?...
  6. 医咖会免费SPSS教程学习笔记—广义线性模型
  7. 通过docker安装nexus3
  8. Java 发送163邮件
  9. 简单分析暴风影音的最新0DAY菜鸟版
  10. C#通过接口获取税控盘基本信息