开发中使用printf,cout等函数能够很方便地从console监控程序运行,
但是对于GUI程序,虽然程序中使用了printf,cout但是无法查看stdout,stderr的输出
有几种方法可以查看GUI程序的输出(VS)
1.使用VC的trace函数代替printf,但是必须include StdAfx.h,输出会显示在ouput窗口中,但是会跟其他的信息混在一起,不是很方便
2.将stdout、stderr输出转向到文件,类似log文件
3.使用WINDOWS提供的一系列ReadConsole,WriteConsole等API来完成这个功能,具体参见MSDN,可以将这些API封装成自己的console类,然后创建一个进程去监视console的输入输出
4.使用VC的Post-builder :设置位置在Project | Properties->Configuration Properties->Build Events->Post-Build Event
在Command Line新加一行命令:editbin /SUBSYSTEM:CONSOLE $(OUTDIR)\filename.exe
(其中 filename 为可执行文件名) ,成功后你的GUI程序运行的时候就多了一个console监控台,比较cool
PS:工程可能需要关闭重新打开,我的是系统重启后(不是因为重启VS看不到重启的哈)看到的console,如果你的不行可以试着重启:)
分享到:
相关推荐
### MATLAB中为GUI添加背景图片的方法 #### 一、引言 MATLAB 是一款广泛应用于科学计算、算法开发以及数据分析的强大工具。对于图形用户界面(GUI)的开发,MATLAB 提供了丰富的工具箱和函数库,使得用户能够轻松地...
### 在VC中为应用程序添加图形超链接功能 #### 背景介绍 随着软件开发技术的进步,越来越多的应用程序开始注重用户体验以及与用户的交互方式。在Windows应用开发领域,特别是使用Visual C++(简称VC)进行开发的...
在Visual C++(以下简称VC++)中为普通程序添加ODBC应用,是开发者常常需要面对的任务。ODBC(Open Database Connectivity)是一种使用标准SQL语句访问数据库的应用程序接口。它允许用户在不同类型的数据库之间进行...
目前很多windows软件的版权对话框中都设有超级链接,这些链接或提供公司网址,或提供电子邮件...如果能在自己写的软件中实现这个功能,定会使程序大增光彩。本实例通过定义一个CmapHyperLink类实现了图像的超链接功能,
如何在SQL_Server_2005中为安装程序增加计数器注册表项值
### 如何在SQL Server 2005中为安装程序增加计数器注册表项值 #### 背景介绍 在安装SQL Server 2005的过程中,可能会遇到一个常见问题:安装程序无法正常识别计数器注册表项值。这通常是因为系统中的性能计数器...
【标题】:“一款在IDEA中为微信小程序注入方法的插件” 【描述】中提到的插件是为了优化微信小程序的开发流程,特别是在 IntelliJ IDEA 这样的集成开发环境中。这款插件的核心功能是自动化处理微信小程序开发中的...
标题“Console线驱动.rar”指的是一个包含Console线驱动程序的压缩文件。Console线通常用于调试和管理系统,特别是在没有图形用户界面或远程访问时,通过串行接口与计算机进行交互。在计算机硬件中,CH340是一种常见...
以上就是在VS.NET 2005中为应用程序添加背景音乐的详细步骤。值得注意的是,不同音频格式可能需要不同的播放组件,如.wav文件可以直接使用.NET Framework内置的SoundPlayer类,但.mp3文件需要Windows Media Player...
本文通过详细的练习题和解决方案,指导读者学习如何在 Android 应用程序中为字符串添加修饰。通过学习本文,读者将能够掌握 Android 中字符串修饰的基本技术和方法,并且能够根据实际情况选择适合的字符串修饰技术来...
gazebo中为行人添加碰撞属性:actor_collisions.zip 具体使用方法参见博客: https://blog.csdn.net/allenhsu6/article/details/114068662
在MATLAB中,GUI(图形用户界面)是一种用于与用户交互的强大工具,它允许通过图形化方式控制程序的运行。本项目重点在于构建一个带有图标的树状列表,这种功能在数据管理和展示时非常有用。"matlab 树状列表GUI"是...
### 使用VC++6.0为程序添加图标的方法 在软件开发过程中,为程序添加图标不仅可以...以上就是在VC++6.0中为程序(包括控制台程序)添加图标的具体步骤,通过这些方法可以轻松实现图标嵌入,提升程序的外观和用户体验。
### 在C#中为DataGrid添加下拉列表框 #### 概述 在C#开发过程中,经常需要在用户界面中使用`System.Windows.Forms.DataGrid`控件来展示和编辑数据。为了提供更好的用户体验和数据输入灵活性,有时我们需要在...
在C#编程环境中,开发Windows Forms或WPF应用程序时,我们常常需要在DataGrid控件中展示数据,并希望某些列能提供下拉列表框(ComboBox)以供用户选择。这可以增强用户界面的交互性和数据输入的准确性。下面将详细...
在深入探讨如何在U-boot中为nand write操作添加进度提示之前,我们首先需要了解一些基础知识,以便更好地理解实现过程。 ### U-boot简介 U-boot(Universal Boot Loader)是一个广泛应用于嵌入式系统的通用引导...
本话题将深入探讨如何在DataGrid中为删除操作添加一个确认对话框。 首先,我们需要理解DataGrid的基本工作原理。DataGrid与数据源绑定后,可以显示和编辑数据集中的记录。当用户点击删除按钮时,我们希望在实际执行...
本篇文章将深入探讨如何在Java中为JTable添加监听,并通过实例代码进行演示。 首先,我们需要了解JTable的基本结构。JTable类是基于DefaultTableModel构建的,它包含了数据和列的定义。为了监听表格的各种事件,...
在 Word 2021 中为字符添加上划线 在 Word 2021 中为字符添加上划线是一件很容易的事情,但是要添加上划线就是不那么方便了。下面将介绍六种方法来实现添加上划线。 一、在字符上画线条 可以使用 Word 2021 的形状...
嵌入式GUI(Graphical User Interface,图形用户界面)是指在嵌入式系统中为用户提供图形化操作界面的技术。与传统的桌面GUI相比,嵌入式GUI面临着诸多限制: 1. **CPU性能**:通常来说,嵌入式设备的CPU速度相对较慢...