Visual 中控制台程序如何使用MFC类库

unresolved external symbol __beginthreadex错误的解决
Win32 Consle Application使用MFC的一些类如CString时编译时相信会很经常遇到一些连接错误:
1. unresolved external symbol __beginthreadex
2. unresolved external symbol __endthreadex
但是不用MFC类又让人不甘心,放着好好的类库不用实在太可惜了。其实是可以用的,只是我们的设置有问题。
下面我将具体设置描述一下,和大家共同分享我的经验。
一.新建一个Win32 Consle Application工程:GetCurrentTime。
二.打开“Project”菜单——〉“Setting”菜单项——〉General选项卡
在Microsoft Fountion Classes:中选择:Use MFC in Static Library.

三.再在C/C++选项卡中的在Category中选择Code Generation,
再在Use run-time library中选择Debug Multithreaded或者multithreaded
其中,
Single-Threaded单线程静态链接库(release版本)
Multithreaded多线程静态链接库(release版本)
multithreaded DLL多线程动态链接库(release版本)
Debug Single-Threaded单线程静态链接库(debug版本)
Debug Multithreaded多线程静态链接库(debug版本)
Debug Multithreaded DLL多线程动态链接库(debug版本)

选择Debug Multithreaded(如果你在Win32 Debug环境下)

时间: 2024-12-15 01:40:05

Visual 中控制台程序如何使用MFC类库的相关文章

C#控制台程序的参数解析类库 CommandLine简单使用说明

前言 C#开发的控制台程序,默认接收string[] args参数.如果有多个参数需要输入时,可以按照顺序依次输入:但如果有些参数不是必选的,或者有些参数中间需要有空格比如时间“2016-05-18 24:35:00”,处理起来就比较麻烦了.一些常用的命令行工具都会提供指定参数的方式,比如:curl C:\Users\Administrator>curl --helpUsage: curl [options...] <url>Options: (H) means HTTP/HTTPS o

Visual Studio 2008中控制台程序一闪而过的解决方法

VS2008中编写C/C++的程序时,调试运行,控制台窗口会在执行完毕后立即关闭,这样就无法看到运行的结果.为了解决这个问题,可以使用①system("pause"); ②getchar();例子程序如下 int _tmain(int argc, _TCHAR* argv[]){ std::cout << "Hello World!\n"; system("pause");                 ----① getchar(

关于控制台程序下使用mfc库中的函数时断言

例如: TCHAR path[8192]; int len = getmodulefilename(afxgetinstancehandle(),path,8192);//会出现断言 如果没有选择支持MFC,就使用afxgetinstancehandle(),会出现断言,要先使用AfxWinInit(::GetModuleHandle(NULL),NULL,::GetCommandLine(),0)初始化MFC(相当于支持MFC).

Visual Studio控制台程序输出窗口一闪而过的解决方法

写个Hello World的程序试一下,发现执行结束后输出窗口会一闪而过,并没有出现Press any key to continue的字样.无论是在Visual Studio 2008.2010还是2012中都有这种情况出现,有些人可能会用下面两种方法中的一种: 在程序代码的最后加上system("pause")或者getchar().其实这是属于dos下的命令. 其实问题是你执行时按的是F5,而正确的应该是Ctrl+F5,这样窗口就会显示 Press any key to cont

转-Visual Studio控制台程序输出窗口一闪而过的解决方法

刚接触 Visual Studio的时候大多数人会写个Hello World的程序试一下,有的人会发现执行结束后输出窗口会一闪而过,并没有出现Press any key to continue的字样.无论是在Visual Studio 2008.2010还是2012中都有这种情况出现,有些人可能会用下面两种方法中的一种: 在程序代码的最后加上system("pause")或者getchar().其实这是属于dos下的命令. 其实问题是你执行时按的是F5,而正确的应该是Ctrl+F5,这

(转)Visual Studio控制台程序输出窗口一闪而过的解决方法

背景:熟悉visiual studio工具的使用 刚接触 Visual Studio的时候大多数人会写个Hello World的程序试一下,有的人会发现执行结束后输出窗口会一闪而过,并没有出现Press any key to continue的字样.无论是在Visual Studio 2008.2010还是2012中都有这种情况出现,有些人可能会用下面两种方法中的一种: 在程序代码的最后加上system("pause")或者getchar().其实这是属于dos下的命令. 其实问题是你

QT中控制台程序运行问题

环境: ubuntu14.04 问题与解决方法: QT中的控制他程序,默认运行方式是直接输出到Output窗口中来.我的程序需要从控制台输入,这时候默认的运行方式就不行了.通过设置工程全选项让它在终端中运行: projects--Build&Run--Run--选中Run In Terminal 此时可能还有问题,就是即不从Output窗口输出,也不从终端运行,这其实应该是终端配置有问题,修改一下: 菜单--工具--选项--环境--普通--系统--终端:/usr/bin/gnome-termin

C、C++控制台程序、Windows API程序、MFC程序理解与比较

在编程语言中,函数是一个很重要的概念,其身影无处不在.在面向过程的编程方式中,函数更是程序的基本构建模块,在面向对象的编程方式中,函数演变为类或对象的成员(当然也可以使用与类无关的函数).函数由函数头和函数体组成.函数头包括域属性(如external.static或类域).返回值类型.函数名.及参数.域属性包括其在多文件编程中的可见范围,是否是属于某一个类的成员?返回值类型是指函数返回的值的具体数据类型(可以理解为函数输出的一部分).函数名是函数保存在内存代码区的首地址,用于函数的调用及函数指针

在Win32控制台程序中使用CString

进入Project->Settings->General 下,在下拉框中选"Use MFC in a Static Library"(使用MFC做为静态链接库): 然后添加头文件#include <afxwin.h>,并且要放在其它头文件前. 否则,会有#error : WINDOWS.H already included. MFC apps must not #include <windows.h>的错误提示. 在Win32控制台程序中使用CStr