向MFC应用程序添加控制台窗口

来源:互联网 发布:二维数组与一维数组 编辑:程序博客网 时间:2024/05/20 23:30

MFC应用程序添加控制台窗口

简介

    如果你曾经写过MFC应用程序,也许你忽略了控制台窗口。熟悉了控制台窗口的人会认为它是如此的便捷,我就是一个,认为printf或者cout是最优秀的调试函数,可以在不打开任务管理器的情况下在控制台中仅仅按下CTRL+C来结束不响应的程序。不幸的是,MFC应用程序默认情况下并不支持控制台。但是在你的应用程序加入一小段代码后,然后改变连接选项你就可以解决这个问题

 

l         对于Visual Studio .NET

l         对于 Visual Stduio 98 (Visual C++ 6.0)

l         它是如何工作的?

 

对于Visual Studio .NET

请根据下面的步骤做:

 

1.         复制以下代码保存为"mfcconsole.cpp",在Visual Studio .NET选择"Project"菜单的"Add Existing Item",把"mfcconsole.cpp"加进来

 

#include "stdafx.h"

#include <stdio.h>

#include <windows.h>

 

extern "C"

{

int PASCAL WinMain(HINSTANCE inst,HINSTANCE dumb,LPSTR param,int show);

};

 

int main(int ac,char *av[])

{

         char buf[256];

         int i;

         HINSTANCE inst;

         inst=(HINSTANCE)GetModuleHandle(NULL);

         buf[0]=0;

         for(i=1; i<ac; i++)

         {

                   strcat(buf,av[i]);

                   strcat(buf," ");

         }

       return WinMain(inst,NULL,buf,SW_SHOWNORMAL);

}

 

2.         有时不知什么原因vs不编译某些已包含的文件,这个时候,选择"Solution Explorer"属性页,然后右键单击"mfcconsole.cpp"文件选择"Property",按下面的图解设置

 

 

3.         "Solution Explorer" 属性页选择项目名字,右键属性,设置如下

 

 

编译一下看看效果o(_)o…,如果你想删除控制台,你只需要将上图的SubSystem恢复至/SUBSYSTEM:WINDOWS

 

对于 Visual Stduio 98 (Visual C++ 6.0)

 

Here's how to add a printf-able console window to your MFC application.

 

1.       .net的(1

  

2. 右键单击mfcconsole.cpp文件,选择” Setting”,设置如下图:

 

 

 3. 在项目菜单中点击设置,设置如下图,将"/subsystem:windows"改为"/subsystem:console"

 

 

它是如何工作的

连接选项"/subsystem:*****"控制程序是否有一个控制台窗口,

l         如果是"/subsystem:console":程序启动控制台,从main函数开始执行

l         如果是"/subsystem:windows":不启动控制台,从WinMain开始执行

原创粉丝点击