ACE简介:ACE是一个跨平台的用于并发通信的C++框架。它提供了丰富的C++封装器和框架组件。使用ACE,开发者可以开发出高性能,实时的通信服务和应用。ACE利用进程间通信,事件分离,动态链接和并发技术简化了面向对象的网络开发。对于学习C++会有很大的帮助。

以下是安装教程:

 

1.进入ACE官方网站http://download.dre.vanderbilt.edu/选择Latest Micro Release Kit下的ACE.zip下载(包含了整个ACE的基础包,其包含了ACE操作系统适配层、C++封装器和网络编程框架的代码)用户可以基于需要选择其他包下载
2.下完后解压到E:\ACE_wrappers



ace 包含ACE工具包的源码
bin含有许多有用的实用程序
apps 包含许多基于ACE的应用程序,比如Gateway消息路由
docs 含有与ACE的各个方面的有关信息,比如它的编码指导方针
examples 包含很多例子,演示怎么使用ACE类和框架
tests含有ACE的回归测试套件
3.在E:\ACE_wrappers目录中创建一个头文件,命名为config.h,在其中加入#include "ace/config-win32.h"的语句
4.打开E:\ACE_wrappers\ace下的ace_v12,点生成->批生成->选择对应系统的选项->生成(或者重新生成解决方案)

然后会在lib文件夹下产生引入库和链接库,至此安装就结束了

5.配置系统环境
变量名 ACE_ROOT 变量值 E:\ACE_wrappers
变量名 Path             变量值 在后面增加;%ACE_ROOT%\lib
6.VS配置
属性->所有配置->VC++目录
包含目录:$(ACE_ROOT)
库目录:$(ACE_ROOT)\lib
7.测试
新建控制台程序

 #include "stdafx.h"
#include "ace/Log_Msg.h"
int _tmain(int argc, _TCHAR* argv[]){
ACE_TRACE(ACE_TEXT ("main"));
ACE_DEBUG ((LM_INFO, ACE_TEXT ("Hello world/n")));
getchar();
return ;
}

添加现有项:ace\lib文件下的ACEd.lib
运行

问题1:本人安装过程中出现了:指定的平台工具集(v120)未安装或无效。请确保选择受支持的 PlatformToolset 值。生成失败。
解决方法:平台工具集是用vs2010打开工程,它默认是用v100,所以这个工程可能用vs2010更高版本打开并更新过。右键点击你的项目,选择属性,再点击配置属性中的常规,常规中有个平台工作集,把V120改成V100,点击应用即可。
问题2:VS2010以下版本尽管可以选择x64,但是好像不能用,因为解决方案的“属性”无效?博主后来还是转用了win32
问题3:运行例子时无法打开包括文件:“ace/Log_Msg.h”: No such file or directory
解决方法:添加包含文件的时候有问题,重新配置库目录和包含目录

问题4:如果出现提示无ACEd.dll的错误,则将ACE安装目录下lib中的ACEd.dll复制到当前程序的debug文件夹下。

补充1:
如果你希望使用MSVC自带的标准C++头文件(C++ Standard Draft 2种定义的iostream,cstdio…..),则应该在ACE_ROOT\ace\config.h.的#include块之前添加一行:
#define ACE_HAS_STANDARD_CPP_LIBRARY 1
如果需要和MFC一起使用,增加如下定义到你的config.h文件中,注意,如果你想使用spawn一个新的线程,则必须保证使用THR_USE_AFX标志来spawn线程。
#define ACE_HAS_MFC 1

转自:http://blog.csdn.net/qq_34233232/article/details/52595211

windows下ACE安装使用教程(转)的更多相关文章

  1. 【本地服务器】windows下nginx安装操作教程

    1.下载nginx 下载地址:    (可选择下载 Stable version 版本) 2.把安装放到C盘或其他盘的根目录,并解压文件压缩包,可以重命名解压的文件夹,方便找到路径 (注意不要直接双击 ...

  2. windows下Eclipse安装Perl插件教程

    windows下Eclipse安装Perl插件教程 想用eclipse编写perl.网上看了很多资料.但EPIC插件的下载连接都失效了.无奈,只好自己动手写个教程记录一下. 准备工作: 安装好Ecli ...

  3. ArcGIS 10.3 for Server 在windows下的安装教程

    原文:ArcGIS 10.3 for Server 在windows下的安装教程 以下是10.2的教程,10.3同样适用. 许可文件: ArcGIS For Server10.3许可文件 - 下载频道 ...

  4. Windows下虚拟机安装Mac OS X ----- VM12安装Mac OS X 10.11

    Windows下虚拟机安装Mac OS X -– VM12安装Mac OS X 10.11 随着Iphone在国内大行其道,越来越多的开发者涌入iOS开发大军 中,但都苦于没有苹果机,本文即将介绍WI ...

  5. memcached在Windows下的安装

    memcached简介详情请谷歌.这里介绍如何在windows下安装. 1.下载     下载地址:http://download.csdn.net/detail/u010562988/9456109 ...

  6. Ruby入门--Linux/Windows下的安装、代码开发及Rails实战

    Ruby入门--Linux/Windows下的安装.代码开发及Rails实战 http://www.linuxidc.com/Linux/2014-04/100242.htm Ubuntu 13.04 ...

  7. mediawiki在windows下的安装

    mediawiki在windows下的安装 对于刚接触wiki的朋友们来说,配置一个服务器环境,安装并运行mediawiki是一件很麻烦的事情,在这里,我尽量用通俗易懂的语言,介绍mw(mediawi ...

  8. windows下手动安装composer并配置环境变量

    windows下手动安装composer并配置环境变量   转载地址: https://my.oschina.net/7sites/blog/209997 之前发表过一篇如何为composer设置代理 ...

  9. 图解Windows下 GIT GUI 使用教程

    https://jingyan.baidu.com/article/19020a0a7ae6af529c284248.html 本篇经验将和大家介绍Windows下 GIT GUI 使用教程,希望对大 ...

随机推荐

  1. [BZOJ2007][NOI2010]海拔(对偶图最短路)

    首先确定所有点的海拔非0即1,问题转化成裸的平面图最小割问题,进而转化成对偶图最短路(同BZOJ1002). 这题的边是有向的,所以所有边顺时针旋转90度即可. 如下图(S和T的位置是反的). #in ...

  2. BZOJ 1042:[HAOI2008]硬币购物(容斥原理+DP)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1042 [题目大意] 硬币购物一共有4种硬币.面值分别为c1,c2,c3,c4. 某人去 ...

  3. [CODE FESTIVAL 2017]Full Tournament

    题意:$2^n$个编号为$1\cdots2^n$的人打比赛,这个比赛会给每个人一个唯一的排名,比赛规则递归地定义如下: $2^n$个人打的是级别为$n$的比赛,初始时他们按某种顺序站成一排 当$n=0 ...

  4. 【模拟退火】Petrozavodsk Winter Training Camp 2017 Day 1: Jagiellonian U Contest, Monday, January 30, 2017 Problem F. Factory

    让你在平面上取一个点,使得其到给定的所有点的距离和最小. 就是“费马点”. 模拟退火……日后学习一下,这是从网上扒的,先存下. #include<iostream> #include< ...

  5. 1.1(SQL学习笔记)SQL基础

    一.SELECT 建表及数据填充语句下载:链接: https://pan.baidu.com/s/1WHYafwqKJEKq1kDwCH_Zlg 提取码: 3wy4 SELECT用于指定检索返回的结果 ...

  6. ob_flush()和flush()和ob_implicit_flush(true)

    http://www.jb51.net/article/16215.htm 第一: “ob_flush()和flush()的区别.前者是把数据从PHP的缓冲中释放出来,后者是把不在缓冲中的或者说是被释 ...

  7. iOS \U6b3e转字符串

    -(NSString *)replaceUnicode:(NSString *)unicodeStr { NSString *tempStr1 = [unicodeStr stringByReplac ...

  8. Linux中KVM虚拟机是什么

    概念: Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中.它使用Linux自身的调度器进行 ...

  9. POJ 3680 Intervals(费用流)

    Intervals Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 5762   Accepted: 2288 Descrip ...

  10. 发一个比trace功能更强大debug工具,MonterDebugger

    经常看到兄弟说trace不出东西啊,这样给你调试会带来很多不便:加入说我们需要将运行时的debug信息和之前某个版本的进行比对:又加入说我们需要在运行时通过debug动态调整显示对象的属性:查看当前整 ...