ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:23.67KB ,
资源ID:4203835      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4203835.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(TAO使用指南.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

TAO使用指南.docx

1、TAO使用指南TAO使用指南发信站: BBS 水木清华站 (Thu May 8 18:35:49 2003), 站内最近正在将一个工程由Orbix2000向TAO移植. 将一些心得和经验奉上, 算是给DOC版做点贡献. 说的不对, 请大家指正. 同时您有什么心得也不仿写出来嘛 :) 1. 什么是TAO?TAO是美国华盛顿大学的CORBA界大牛Douglas C. Schmidt博士领导开发的一个实时CORBA平台. 它是一个开放源码项目, 所以是完全免费的. 用C+语言开发. 符合CORBA2.6版本.支持语言: C+支持平台: Win32, 常见的各种Unix, Linux, 实时操作系统如

2、VxWorks等等. 在所有的CORBA平台中, TAO支持的平台应该是最多的.支持的服务: Naming, Event, Notification, Security, Time,Scheduling, Logging, Lifecycle, Trading, Concurrency, Lifecycle,A/V Streaming, Load balancing等.2. 网上的TAO资源TAO主页: http:/www.cs.wustl.edu/schmidt/TAO.htmlOCI公司宣布对TAO进行技术支持: 它出了一本书叫: TAO Developers Guide, 上下两卷, 1

3、000页左右, 要250美刀. 吐血买了一本.此外, OCI有自己的TAO发布版本, 最新版本号为1.2a. Win32版本开价50美刀.OCI有一个TAO的FAQ, 很不错, 地址:TAO的Mailing List: tao-userscs.wustl.eduMailing List Archive: 3. 下载TAO地址: http:/download.dre.vanderbilt.edu/目前最新的Release版本是1.3发信人: Mentoya (钻研Orbix2000中.), 信区: DOC 标 题: TAO使用指南 - 编译ACE和TAO发信站: BBS 水木清华站 (Thu M

4、ay 8 19:11:37 2003), 转信我只用到Win32平台. 现在使用的环境是: WinXP Professional + MSVC SP5.在Win32平台下, 还可以使用C+ Builder来编译和开发TAO. 我没有用过.:-(参见: http:/www.cs.wustl.edu/schmidt/ACE_wrappers/TAO/TAO-INSTALL.html-TAO完全支持Win32API,(包括Windows NT, Windows 2000, Windows 95/98/ME)VC5.0和VC6.0均可编译。如果要在Borland C+ Builder中编译,请参见有关

5、文档.TAO可以被编译成两种版本:DLL版(动态链接)和LIB版(静态链接)一. Win32+VC6.0下编译和安装ACE和TAO将网上下载的TAO软件包解压缩到某个目录,在该目录下会有ACE_wrappers目录。请按照以下步骤来执行:1. 新建两个环境变量:ACE_ROOTACE_wrappers所在目录;TAO_ROOT=ACE_wrapperstao2. 在ACE_ROOTace目录下建立一个空文件config.h,里面包含一句:i nclude ace/config-win32.h以说明是要在win32平台下进行编译。注: (1) i nclude config-win32.h亦可(

6、2) 最好在i nclude之前加上#define ACE_HAS_STANDARD_CPP_LIBRARY 1 以使用MSVC的STL库.3. 如果是98/ME,则在ACE_ROOTaceconfig.h的最前面加上#define ACE_HAS_WINNT4 0来关掉一些NT/2000中特有的代码。4. 如果你想用MSVC的STL库 (如iostream, cstdio等), 则在config.h文件中的i nclude语句前添加下面的行: #define ACE_HAS_STANDARD_CPP_LIBRARY 1注: 推荐使用该编译开关. 否则对新手而言, 在自己的工程中使用MSVC的

7、STL库时会有一些小麻烦.5. 如果在ACE中要使用MFC的库,则需要在config.h中添加:#define ACE_HAS_MFC 1在默认情况下,所有的ACE工程使用的是MSVC的DLL文件作为运行时库。你可以选择使用ACE的静态库文件(LIB)而不需考虑这些运行时库。选择动态链接的原因是所有的NT都会包含这些dll文件(节省空间). 如果你想使用MFC的静态库版本,则需要在config.h中加入以下的宏定义:#define ACE_USES_STATIC_MFC 1你也可以全部使用静态库,这需要你在ACE的工程文件中自己设置。6. 如果定义了ACE_AS_STATIC_LIBS 宏,则

8、ACE 库将被编译成为静态库。如果你的程序要静态链接ACE的静态库,则在你的工程中也要定义这个宏:ACE_AS_STATIC_LIBS.作为可选项,为了减小静态库文件和你的可执行程序的大小,你可以在ACE_ROOTaceconfig.h文件的i nclude语句前添加如下的宏定义 #define ACE_NO_INLINE来禁止内联函数。7. 用VC打开TAO和ACE的工程文件:ACE_ROOTtaotaoace.dsw,开始编译ACE和TAO. 注意ACE和TAO有Debug和Release两个版本. 你在开发自己的程序时,如果是Debug版的程序, 必须链接Debug版的TAO库, 如果是

9、Release版的程序,必须链接Release版的TAO库.(这不废话! 不过你一定会回来和我一起唱这个当当当的) taoace.dsw中包含了许多工程, 工程之间是有依赖关系的. 所以这个工程编译的顺序比较重要. 关于编译的顺序, 下文叙述.每个工程都包含有一些不同的配置:Debug/Release、MFC/Non-MFC、Static/Dynamic等版本。你必须确定你所需要的版本。如,要生成你程序的debug版,则需要debug版的ACE。注意:如果你用动态(DLL)版本的TAO,在开发程序时,需要将ACE_ROOTbin目录添加到你的程序的PATH环境变量中,否则程序会报告找不到动态链

10、接库.8. 编译顺序.TAO中有好多服务可能是你用不到的. 所以编译时没有必要将所有的程序全部编译一遍. 要知道编译TAO还是个艰巨的任务咧.我目前只用到了Naming和Event服务, 并且没有用它的实时CORBA功能. 所以我的编译顺序是:说明 需要编译的工程-核心库 ACE DLL FilesTAO DLL FilesIDL编译器 gperf FilesTAO_IDL_FE_DLL FilesTAO_IDL_BE_DLL FilesTAO_IDL Compiler FilesPOA PortableServer Files名字和事件服务 IORTable FilesSvc Utils F

11、ilesCosNaming FilesNaming_Service FilesMessaging FilesCosEvent FilesCosEvent_Service FilesNT_Naming_Service Files-TAO的主页上有一个可以自动编译所有TAO工程的脚本, 记不得在那里了.9. 编译后得到的文件分散于各目录中:可执行程序和动态链接库文件: $ACE_ROOTbinlib文件: $(ACE_ROOT)ace,$(TAO_ROOT)tao,$(TAO_ROOT)orbsvcsorbsvcs头文件: $(ACE_ROOT),$(TAO_ROOT),$(TAO_ROOT)or

12、bsvcs10. ACE的DLL和LIB的命名规则:当使用MSVC编译时的命名规则如下:静态库/DLL文件名 + (是静态库吗? s : ) + (是Debug模式的库吗? d : ) + (.dll/.lib)11. 测试TAOTAO的测试代码位于TAO_ROOTtests目录下。有一个vc的工程文件:TAO_tests.dsw来编译所有的测试代码。发信人: Mentoya (钻研Orbix2000中.), 信区: DOC 标 题: TAO使用指南 - 用VC+开发TAO程序发信站: BBS 水木清华站 (Thu May 8 19:34:42 2003), 转信在Microsoft Visu

13、al C+中开发TAO程序时的设置:一. 路径设置1. 首先确认环境变量ACE_ROOT和TAO_ROOT已被正确设置.2. 将(ACE_ROOTbin)添加到PATH环境变量中. 否则会找不到DLL.3. 在Tools-Options-Directories中, 分别添加如下目录:Include files:$(ACE_ROOT),$(TAO_ROOT),$(TAO_ROOT)orbsvcsLibrary files:$(ACE_ROOT)ace,$(TAO_ROOT)tao,$(TAO_ROOT)orbsvcsorbsvcs4. 也可以在Project-Settings-C/C+-Prep

14、rocessor-Additional include directories中添加头文件的路径.在Project-Settings-Link-Input-Additional library directories中添加静态库文件路径.二. 工程设置1. Project-Settings-C/C+-Code generation:如果工程是Debug版, 选择Debug Multithreaded DLL如果工程是Release版, 选择Multithreaded DLL2. Project-Settings-Link-Input-Object/library modules:需要添加TAO

15、的静态链接库文件:说明 Debug版 Release版-普通客户端: Debug版: ACEd.lib Release版: ACE.lib普通服务器: 在ACE.lib/ACEd.lib的基础上, 还需要添加:Debug版: PortableServerd.libRelease版: PortableServer.lib如果使用了名字服务, 则需要添加 TAO_CosNaming.lib 或TAO_CosNamingd.lib如果使用了事件服务, 则需要添加 TAO_CosEvent.lib 或TAO_CosEventd.lib注意: TAO分Debug和Release版, 所以在开发时, De

16、bug和Release版的设置要严格区分. 即使是MS自己的库也是这样. 如对于Debug版, 要包含MSVCRTd.lib而不是MSVCRT.lib. 我就是因为这个原因而使程序出现异常, 导致差点放弃了TAO :-(发信人: Mentoya (钻研Orbix2000中.), 信区: DOC 标 题: TAO使用指南 - 做一个TAO的SDK发信站: BBS 水木清华站 (Thu May 8 19:56:03 2003), 站内TAO的文件众多, 目录结构复杂, 所以生成一个所谓的TAO SDK来方便开发.这个TAO SDK的目录结构如下:TAOSDK_ROOT|- bin (所有的可执行文

17、件和动态链接库)|- idl (ORB的IDL文件)|- include (所有的头文件)| |- ace| | |- *| | |- *| | | |- orbsvcs| | |- CosEvent| | |- Naming| | |- *| | |- *| | | |- tao| | |- IORTable| | |- PortableServer| | |- *|- lib (所有的静态库文件)使用时, 首先创建环境变量 TAOSDK_ROOT 为TAO SDK的根目录, 然后在VC的工程中如下设置:添加头文件的include路径: $(TAOSDK_ROOT)include,$(TAO

18、SDK_ROOT)includeorbsvcs,$(TAOSDK_ROOT)tao添加静态库文件路径:$(TAOSDK_ROOT)lib下面提供了一个自动生成TAO SDK的批处理文件, 将该文件置于ACE_ROOT目录下,然后执行之.注: 本程序来源于TAO的邮件列表.File name: TAOSDK.bat-echo offecho Createing directoriesmkdir .taobinmkdir .taoincludemkdir .taoincludeacemkdir .taoincludeaceclassixmkdir .taoincludeaceqosmkdir .t

19、aoincludeacermcastmkdir .taoincludeacesslmkdir .taoincludetaomkdir .taoincludetaoBiDir_GIOPmkdir .taoincludetaoDomainmkdir .taoincludetaoDynamicAnymkdir .taoincludetaoDynamicInterfacemkdir .taoincludetaoIFR_Clientmkdir .taoincludetaoIORManipulationmkdir .taoincludetaoIORTablemkdir .taoincludetaoPort

20、ableServermkdir .taoincludetaoRTCORBAmkdir .taoincludetaoRTPortableServermkdir .taoincludetaoSmartProxiesmkdir .taoincludetaoStrategiesmkdir .taoincludetaoTypeCodeFactorymkdir .taoincludeorbsvcsmkdir .taoincludeorbsvcs*mkdir .taoincludeorbsvcsConcurrencymkdir .taoincludeorbsvcsCosEventmkdir .taoincl

21、udeorbsvcsESFmkdir .taoincludeorbsvcsETCLmkdir .taoincludeorbsvcsEventmkdir .taoincludeorbsvcsFaultTolerancemkdir .taoincludeorbsvcsLifeCyclemkdir .taoincludeorbsvcsLoadBalancingmkdir .taoincludeorbsvcsLogmkdir .taoincludeorbsvcsNamingmkdir .taoincludeorbsvcsNotifymkdir .taoincludeorbsvcsPropertymkd

22、ir .taoincludeorbsvcsSchedmkdir .taoincludeorbsvcsSecuritymkdir .taoincludeorbsvcsSSLIOPmkdir .taoincludeorbsvcsTimemkdir .taoincludeorbsvcsTradermkdir .taolibecho copying header files.copy ace*.i .taoincludeacecopy ace*.inl .taoincludeacecopy ace*.h .taoincludeacecopy ace*.cpp .taoincludeacecopy ac

23、eclassix*.i .taoincludeaceclassixcopy aceclassix*.h .taoincludeaceclassixcopy aceclassix*.cpp .taoincludeaceclassixcopy aceqos*.i .taoincludeaceqoscopy aceqos*.h .taoincludeaceqoscopy aceqos*.cpp .taoincludeaceqoscopy acermcast*.i .taoincludeacermcastcopy acermcast*.h .taoincludeacermcastcopy acermc

24、ast*.cpp .taoincludeacermcastcopy acessl*.i .taoincludeacesslcopy acessl*.h .taoincludeacesslcopy acessl*.cpp .taoincludeacesslcopy taotao*.i .taoincludetaocopy taotao*.inl .taoincludetaocopy taotao*.h .taoincludetaocopy taotao*.idl .taoincludetaocopy taotao*.cpp .taoincludetaocopy taoorbsvcsNaming_

25、Service*.h .taoincludetaocopy taoorbsvcsLoadBalancer*.h .taoincludetaocopy taoorbsvcsLogging_Service*.h .taoincludetaocopy taoorbsvcsTAO_Service*.h .taoincludetaocopy taoorbsvcsTime_Service*.h .taoincludetaocopy taoorbsvcsNaming_Service*.h .taoincludetaocopy taoorbsvcsTrading_Service*.h .taoincludet

26、aocopy taoorbsvcsImplRepo_Service*.h .taoincludetaocopy taoorbsvcsConcurrency_Service*.h .taoincludetaocopy taoorbsvcsCosEvent_Service*.h .taoincludetaocopy taoorbsvcsDump_Schedule*.h .taoincludetaocopy taoorbsvcsEvent_Service*.h .taoincludetaocopy taoorbsvcsIFR_Service*.h .taoincludetaocopy taoorbs

27、vcsLifeCycle_Service*.h .taoincludetaocopy taoorbsvcsNotify_Service*.h .taoincludetaocopy taoorbsvcsScheduling_Service*.h .taoincludetaocopy taoorbsvcsorbsvcs*.h .taoincludeorbsvcscopy taoorbsvcsorbsvcs*.i .taoincludeorbsvcscopy taoorbsvcsorbsvcs*.cpp .taoincludeorbsvcscopy taoorbsvcsorbsvcs*.h .taoincludeorbsvcs*copy taoorbsvcsorbsvcs*.i .taoincludeorbsvcs*copy taoorbsvcsorbsvcs*.cpp .taoincludeorbsvcs*copy taoorbsvcsorbsvcsConcurrency*.h .taoincludeorbsvcsConcurrencycopy taoorbsvcsorbsvcsConcurrency*.i .taoincludeorbsvcsConcurrencycopy taoorbsvcsorbsvcsConcurrency*.cpp .taoincludeorbsvcsC

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1