控制台应用程序中添加对MFC的支持

在windows控制台应用程序中,肯能会想使用一些MFC中的类,如CStringArray等,通过下面两步简单的设置可以添加对MFC的支持:

1、右击工程名 -> References 选择 All Configuration

 ->Configuration Properties ->General->Use of MFC ->Use MFC in a Shared DLL

2、在stdafx.h头文件中添加一下内容:

#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS      // some CString constructors will be explicit
#ifndef VC_EXTRALEAN
#define VC_EXTRALEAN            // Exclude rarely-used stuff from Windows headers
#endif
#include <afx.h>
#include <afxwin.h>         // MFC core and standard components
#include <afxext.h>         // MFC extensions
#ifndef _AFX_NO_OLE_SUPPORT
#include <afxdtctl.h>           // MFC support for Internet Explorer 4 Common Controls
#endif
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h>                     // MFC support for Windows Common Controls
#endif // _AFX_NO_AFXCMN_SUPPORT

时间: 2024-07-28 23:22:56

控制台应用程序中添加对MFC的支持的相关文章

VS2010的MFC对话框程序中添加菜单栏的过程

VS2010的MFC对话框程序中添加菜单栏的过程 最近在看一个用MFC写的界面的项目的代码,在代码和界面中一直没有看到关于菜单控件是如何添加进对话框的,于是就百度了下.结果,与其它控件(Button等)添加的方式不一样: VS2010的MFC对话框程序中添加菜单栏的过程大致分了这五步. 一.将Menu加入Resource视图中 在WorkSpace中的Resource视图下,在左边目录的任意位置上,先右键-->选择Insert Resource(插入资源)选项,在弹出的对话框中选择Menu以后,

如何在VS2010的VC++ 基于对话框的MFC程序中添加菜单

方法1:亲测 成功  转载自https://social.msdn.microsoft.com/Forums/vstudio/zh-CN/48338f6b-e5d9-4c0c-8b17-05ca3ef1f761/vs2010dialog 你可以创建菜单作为一种资源,然后将它附加到对话框.打开dialog“属性”对话框,你可以看到一个Menu属性,最终我们将在这里指定一个我们自己创建的菜单ID. 具体步骤如下: •在资源视图中右键单击工程名,插入一个新的菜单.这个菜单会有一个ID(例如:IDR_M

基于MFC对话框程序中添加菜单栏 (CMenu)

vs2013MFC对话框程序中添加菜单栏的过程,我大致分了这五步. 一.将Menu加入Resource视图中 在WorkSpace中的Resource视图下,在任意一个文件夹图标上,右击选择Insert(插入)选项,在弹出的对话框中选择Menu以后,再点击,new按钮,菜单就会添加成功了,但是现在还没有完成,还不能进行编译,因为现在的菜单时空的,在编译的时候会被清除的. 二.用菜单编辑器添加菜单栏及菜单项 菜单添加成功后,菜单编辑器自动打开,可以在其中添加菜单栏及菜单项,比较简单. 三.将菜单加

在Windows控制台应用程序中使用CString

CString是在windows平台下开发中经常使用的字符串类, CString已从MFC中剥离出来了,可以单独使用,只需引用atlstr.h头文件即可. 1 include "stdafx.h" 2 #include <atlstr.h> 3 #include <iostream> 4 5 using namespace std; 6 7 int _tmain(int argc, _TCHAR* argv[]) 8 { 9 //控制台应用程序中使用CStrin

在.NET Core控制台应用程序中使用强类型配置

想象一下,你写一个控制台应用程序,你想要从配置文件中以强类型方式读取配置. .NET Core 可以帮助我们解决. 通常我会在ASP.NET Core MVC中演示,但简单起见,只在控制台应用程序中演示. 让我们创建两个配置类,用于保存应用程序和模块名称. public class MySettings { public string ApplicationName { get; set; } } public class MyModuleSettings { public string Mod

win32控制台应用程序中使用CString类型的方法

环境:win7 64位  + vs2010 一直在找,MFC不懂真没办法,顺便记住.... 新建win32控制台应用程序中不能使用cstring类型,此时包含头文件#include <afxwin.h>,并在项目属性->配置属性->常规 "项目默认值"->"MFC的使用"中选择"在静态库中使用MFC"或者"在共享DLL中使用MFC"即可

如何在RCP程序中添加一个banner栏

前言:这段时间还算比较空闲,我准备把过去做过的有些形形色色,甚至有些奇怪的研究总结一下,也许刚好有人用的着也不一定,不枉为之抓耳挠腮的时光和浪费的电力.以前有个客户提出要在RCP程序中添加一个banner栏,研究了很久才搞定.代码是基于eclipse4.3.2的. 先看一下效果预览: 为了添加一个banner栏,我们必须重写RCP程序最外层的layout类,即TrimmedPartLayout.java.这个layout类是用来控制menu,toolbar等最基本的layout布局的.我们写一个

对类HelloWorld程序中添加一个MessageBox弹窗

对类HelloWorld程序中添加一个MessageBox弹窗 分析: 任一程序运行的时候都会加载kernel32.dll的,但MessageBoxA()这个API却是在user32.dll中的.所以在HelloWorld.exe中是没办法直接添加MessageBoxA()的调用. 不过好在有kernel32.dll,其中有两个API可以解决user32.dll没加载的问题,分别是LoadLibraryA(filename)和GetProcAddress(hModule, 函数名). 操作: 清

在win32控制台应用程序中实现定时器

1.SetTimer:在控制台应用程序中同样可以用SetTimer实现定时器的效果. 普通的win32程序中定时器的应用很多也很方便,但是在win32控制台中也是可以使用定时器的,利用的是windows程序的消息循环机制,如下: #include<iostream> #include<windows.h> using namespace std; //定时器ID DWORD dwTimerId = 0; void CALLBACK TimeProc( HWND hwnd, UINT