1 / 38

RTXClient 插件开发入门

RTXClient 插件开发入门. 目 录. RTXC 概述 RTX Client 系统架构 RTX Client 对象模型 RTXC 插件应用 RTX Client 插件描述 - RTXC 插件应用场景 RTXC 插件开发 开发前准备 插件相关文件及接口说明 创建插件工程 RTX 界面上的体现 RTXC 事件的使用方法 RTX 数据传输 扩展 TAB 插件打包发布 插件打包 插件安装. RTXClient. 最新版本 : RTXC2007 正式版 SDK 版本: RTXC2007 SDK 正式版 开发语言: VC6.0

sef
Download Presentation

RTXClient 插件开发入门

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. RTXClient 插件开发入门

  2. 目 录 • RTXC 概述 • RTX Client 系统架构 • RTX Client 对象模型 • RTXC 插件应用 • RTX Client 插件描述 - RTXC插件应用场景 • RTXC 插件开发 • 开发前准备 • 插件相关文件及接口说明 • 创建插件工程 • RTX界面上的体现 • RTXC事件的使用方法 • RTX数据传输 • 扩展TAB • 插件打包发布 • 插件打包 • 插件安装

  3. RTXClient 最新版本:RTXC2007 正式版 SDK版本: RTXC2007 SDK 正式版 开发语言:VC6.0 构建方式:COM/ATL组件 代码量: 约50万行 开发人数:10人 架构特性:平台化、模块化、 组件化

  4. RTXC 概述 ---- 系统架构

  5. RTXC 概述 ---- 对象模型

  6. RTXC 插件应用 • RTXC插件是RTX Client内系统功能的扩展,让第三方开发者根据实际需求,在RTX Client平台上定制开发一些功能; • 第三方开发者只需要实现几个简单的接口函数,就可以实现跟RTXC进行数据交互; RTXC提供了一套基于COM的扩展接口,来实现在平台内核中对插件扩展功能的支持。

  7. RTXC 插件应用 RTXC是提供了一个插件运行的平台,但对插件的功能没有做任何的限制,所以开发者可以根据实际情况开发任意插件;

  8. RTXC 插件开发 ---- 开发前准备 需要安装如下文件: 1、RTX Client2007 正式版 2、RTX Client2007 SDK 正式版 需要阅读的文件: RTX Client SDK帮助.CHM RTXClient 插件开发入门 .DOC

  9. RTXC 插件开发 ---- 相关文件 RTXC提供了一些头文件和TLB文件给开发人员调用。以下是一些主要的文件:

  10. RTXC 插件开发 ---- 插件接口

  11. RTXC 插件开发----插件接口函数 IRTXCPlugin接口函数:

  12. RTXC 插件开发 ---- 创建插件工程 利用向导的方式创建插件工程; 需要将RTXC SDK目录中wizard目录下的 RTXCModuleAW .awx 文件拷至VC安装目录 Microsoft Visual Studio\COMMON\MSDev98\Template\

  13. RTXC 插件开发 ---- 创建插件工程

  14. RTXC 插件开发 ---- 创建插件工程

  15. RTXC 插件开发 ---- 创建插件工程

  16. RTXC 插件开发 ---- 创建插件工程

  17. RTXC 插件开发 ---- 界面上体现 1、动态菜单

  18. RTXC 插件开发 ---- 界面上体现 自定义第三方 设置

  19. RTXC 插件开发 ---- 界面上体现 自定义“您可以”区域 自定义消息 类型 自定义TAB 自定义图标

  20. RTXC 插件开发 ---- 事件 RTXC事件使用纯分派接口。为了方便编写事件接收器,RTXC提供了一套RTXC_EVENT_SINK 帮助宏。同时,使用这套宏封装了 RTXC的所有事件,将 RTXC的 COM 事件通通转为 C++ Events 的接收器对象,避免重复编写事件接收器。 RTXC的事件可以分为两种:内核事件和用户自定义事件。 用户自定义事件是通过内核中的事件中心来实现事件的中转,用户在插件中向事件中心注册一个自定义的事件,就可以在其他的插件中捕获到该事件。

  21. RTXC 插件开发 ---- 事件 用户资料更改事件 用户状态更改事件 … …

  22. RTXC 插件开发 ---- 数据传输 RTXC插件中数据传输可以分为三种,其特点总结如下:

  23. RTXC 插件开发 ---- RTXC传输通道 RTXC的传输通道是采用TCP的传输,所有的数据都是通过服务器中转,所以传输数据稳定可靠,但是效率比较低;适合于传输量比较小的数据。 RTXC传输的数据都需要通过IRTXCData来封装,然后通过 IRTXCModuleSite::SendData来发送数据。执行完发送数据之后,可以通过OnSendDataResult事件来得到发送数据的结果。 接受到数据后,就触发消息 OnDataReceived ,用户可以在该消息的触发函数中处理接受到的数据; 另外, OnDataReceived 函数中只能得到能标识 IRTXCData 的KEY值,用户需要通过该KEY值, 通过 IRTXCModuleSite :: GetData 的方式得到当前接受到的IRTXCData 数据包。

  24. RTXC 插件开发 ---- IRTXCData 任意数据封装的容器,通过任意的KEY值来设置或者获取容器内对应的数据,用于在各模块、编成环境之间进行传递数据。 用例: // 创建一个IRTXCData对象 IRTXCDataPtr& ptrSendData = m_ptrRoot -> CreateRTXCData(); // 设置RTXCData的内容 ptrSendData->SetString(_T("SENDER"), _bstr_t (( LPCTSTR )_T(“ Benchen ”))); ptrSendData->SetLong(_T("INDEX"),(long)0);

  25. RTXC 插件开发 ---- P2P传输通道 P2P传输通道是采用UDP传输,实现了用户与用户之间进行点对点传输的模式,不经过服务器中转,而且效率比较高,用户可以用来进行大数据量的传输。

  26. RTXC 插件开发 ---- 扩展TAB 第三方开发者可以在插件中实现自定义RTXC面板上的TAB,并且可以在新增加的TAB页面中,定制一些自己的业务;用户实现扩展TAB必须包含以下几类文件: 除此之外,这些文件还需要跟一个插件文件一起发布。

  27. RTXC 插件开发 ---- ExtTab.XML 扩展TAB的实现原理是在RTXC启动的时候,会到插件目录下去查找Tabs文件夹下的ExtTab.XML文件,根据该文件的配置,在RTXC的面板上添加一个TAB,并把该TAB显示出来。一个ExtTab.XML文件的格式如下: <?xml version="1.0" encoding="gb2312"?><Root><ExtTab GUID="{A86882ED-3AA1-45BF-AEDF-1A14C7E6F28F}" Title="扩展面板1" IconFile="exttab.bmp" Enabled="1">exttab.ocx</ExtTab></Root>

  28. RTXC 插件开发 ---- 扩展TAB接口 用户在开发扩展TAB的时候,需要实现IRTXPluginTab和IRTXPluginFrameSize 接口函数,来设置TAB的大小以及与RTXC的内核进行交互。 IRTXPluginTab接口 IRTXPluginFrameSize接口

  29. RTXC 插件打包发布 插件开发完成后,需要采用 RPIPackager .EXE 对插件文件进行打包,打包完成之后,生成 RPI 后缀的文件,该文件自动跟客户端的RPISetup .EXE文件进行关联,并通过该文件自动的将插件部署到RTXC里。

  30. RTXC 插件打包发布 此处可能出现的问题: 1、GUID不是插件COM文件的GUID,所以会不匹配; 2、插件DLL文件缺少其相关联的DLL文件,建议采用Depends查看。 3、插件接口错误;在没有采用向导的情况可能会出现。

  31. RTXC 插件打包发布

  32. RTXC 插件打包发布

  33. RTXC 插件打包发布

  34. RTXC 插件打包发布

  35. RTXC 插件打包发布

  36. RTXC 插件打包发布

  37. RTXC 插件打包发布

  38. 后 语 本文档描述的功能点,只涉及到一些比较常用的SDK功能,并不包括所有 RTXC SDK的功能,开发者如果需要了解更多 RTXC SDK的功能,请参看《RTXClient SDK帮助文档》。谢谢! RTXC 开发组 2008.3.17

More Related