WEB开发网
开发学院软件开发VC C++网络开发包ACE环境的配置与调试 阅读

C++网络开发包ACE环境的配置与调试

 2010-01-09 20:32:08 来源:WEB开发网   
核心提示:五、样例程序的编译用VC打开D:\ACE_wrappers\tests\tests.dsw“编译”,“批构建”六、自写程序的工程配置中篇:ACE程序员教程.pdf中的样例程序:网址:www.cs.wustl.edu/~schmidt/ACE_wrappers/docs/t

五、样例程序的编译

用VC打开D:\ACE_wrappers\tests\tests.dsw

“编译”,“批构建”

六、自写程序的工程配置

中篇:ACE程序员教程.pdf中的样例程序:

网址:www.cs.wustl.edu/~schmidt/ACE_wrappers/docs/tutorials/guide-tutorials.html

将网页上的原代码复制到一新建文件,并命名为server.cpp

用VC打开,编译,重建全部,弹出对话框,“This build command require ...“,点”是“

会出现以下错误

如果有“Cannot open include file: 'ace/SOCK_Acceptor.h': No such file or directory”

工程-设置-C/C++: Preprocessor,附加包含路径:D:/ACE_wrappers

如果有“ You must link against multi-threaded libraries when using ACE (check your project settings)”

工程-设置-C/C++: Code Generation - Use run-time library : Debug Multithreaded Dll

如果有“error C2065: 'ACE_ERROR' : undeclared identifier”

error C2065: 'ACE_DEBUG' : undeclared identifier

#include "ace/Log_Msg.h"

error C4716: 'ace_main_i' : must return a value

在main中加入

return 0;

“error LNK2001: unresolved external symbol "__declspec(dllimport) int __cdecl”

工程-设置-Link-Input: 对象/库模块:添加aced.lib

附加库路径:D:\ACE_wrappers\ace

编译client中遇到的问题

1、error C2039: 'sprintf' : is not a member of 'ACE_OS'

#include "ace/OS_NS_stdio.h"

2、error C2039: 'strlen' : is not a member of 'ACE_OS'

#include "ace/OS_NS_string.h"

3、error C2059: syntax error : '?'

错误在这一句: ACE_DEBUG((LM_DEBUG,?Usage egX <hostname> <port_number>\n?));

将?改为"

4、无法找到动态链接库aced.dll于指定的路径

为系统变量PATH加上D:\ACE_wrappers\bin

静态包含:

工程-设置-C/C++-预处理程序定义中加入 ,ACE_AS_STATIC_LIBS

例1server编译后生成

server.exe 16K serverd.exe 97K   servers.exe 124K serversd.exe 669K

(servers.exe较适合发布)

例2 client编译后生成

client.exe 16K clientd.exe 97K   clients.exe 124K clientsd.exe 669K

(clients.exe较适合发布)

测试 clients 127.0.0.1 1919

servers 1919

上一页  1 2 

Tags:网络 开发包 ACE

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接