为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

第01章 ObjectCRX编程基础

2013-03-25 12页 pdf 980KB 187阅读

用户头像

is_740494

暂无简介

举报
第01章 ObjectCRX编程基础 第 1 章 ObjectCRX 编程基础 初学 ObjectCRX 编程,需要了解其开发和调试环境的构建,本章首先帮助读者建立起 开发环境,进而介绍加载和运行 ObjectCRX 应用程序的方法,最后仍然以 Hello,World 来 作为进入 ObjectCRX 开发的第一个程序。 1.1 ObjectCRX开发环境 1.1.1 说明 使用 ObjectCRX,首先要确定你的目标平台,获得适当的开发环境。如果你是在电子 图板 2011 平台上开发,你就需要具备下面的工具和软件:  电子图板 2011 ...
第01章  ObjectCRX编程基础
第 1 章 ObjectCRX 编程基础 初学 ObjectCRX 编程,需要了解其开发和调试环境的构建,本章首先帮助读者建立起 开发环境,进而介绍加载和运行 ObjectCRX 应用程序的方法,最后仍然以 Hello,World 来 作为进入 ObjectCRX 开发的第一个程序。 1.1 ObjectCRX开发环境 1.1.1 说明 使用 ObjectCRX,首先要确定你的目标平台,获得适当的开发环境。如果你是在电子 图板 2011 平台上开发,你就需要具备下面的工具和软件:  电子图板 2011 中文版或英文版。  Visual Studio 2010 英文版。  ObjectCRX 2011 开发包。 本节将要介绍 ObjectCRX 开发环境的构建,包括开发包的获得、开发包的组成部分、 ObjectCRX 向导的安装,以及自动提示和显示 ObjectCRX 关键字的方法。 1.1.2 思路 本章的内容不涉及具体的编程,此部分从略。 1.1.3 步骤 在开始本书的旅行之前,首先要指出,本书所有的程序都是基于电子图板 2011 中文版, 因此构建的开发环境为“Visual Studio 2010 英文版+电子图板 2011 中文版+ ObjectCRX2011”。按照 下面的步骤,一步一步构建开发环境: (1)安装电子图板 2011 中文版和 Visual Studio 2010 英文版。软件的安装可以参考相 关软件的说明文件,不再介绍。 注意:请选择正确的 Visual Studio 版本,否则可能无法与电子图板 2011 集成开发。 (2)获得 ObjectCRX 开发包。 安装完《CAXA 电子图板 2011 - 机械版》后会在其安装目录下获得 ObjectCRX 开发 包,比如将《CAXA 电子图板 2011 - 机械版》安装在 C 盘下后,ObjectCRX 开发包在 C:\Program Files\CAXA\CAXA DRAFT MECHANICAL\2011\CRX 目录下。 在上述目录下 ? ? -? ? ? ? ? ? ? ? Caxa ·2 得到 为 C 按钮 向导 a 电子图板 CR · 到下面几个文 � docs:包 � docsamps 中所提到的 � inc:包含 � lib:包含 � Wizard: (3)安装 O CRXWizard.e 钮开始安装向 经过一段时 导的安装。 RX 二次开发指 文件夹: 包含所有的联 s:包含在《 的源代码和说 含 ObjectCRX 含 ObjectCRX Visual Studi ObjectCRX 开 exe 安装文件 向导。 时间,系统弹 指南 机帮助文件 《ObjectCRX 说明文件。 X 的头文件。 X 的库文件。 o 新建 crx 项 开发向导。按 件。点击安装后 图 1.1 出如 图 1.2 。 开发者向导 项目的向导工 按照开发包中 后,系统弹出 安装 ObjectC 所示的对话 导》(在 docs 工具程序。 中的路径 Wiza 出如图 1.1 所 CRX 开发向导 框,单击【F 文件夹中, ard 目录下, 示的对话框, Finish】按钮完 为英文的资 找到一个名 ,单击【Insta 完成 ObjectC 料) 名称 all】 CRX ? ? -? ? ? ? ? ? ? ? 对话 1.1 此时启动 V 话框,其中的 .4 效果 Visual Studio 的项目列表中 图 2010,选择【 中已经包含了 图 1.3 Objec 图 1.2 向导安装 File/New/Pro ObjectCRX ctCRX 开发向导 装完成 oject】菜单项 2011 AppWi 导被添加到列表 第 1 章 Ob 项,系统会弹出 izard,如图 表中 ObjectCRX 编程 出【New/Proje 1.3 所示。 程基础 ·3· ect】 ? ? -? ? ? ? ? ? ? ? Caxa 电子图板 CRX 二次开发指南 ·4· 本节不需要实例。 1.1.5 小结 虽然本书介绍的是 ObjectCRX2011,电子图版 2011 。 1.2 ObjectCRX 应用程序的加载和运行 1.2.1 说明 本节介绍在开发 ObjectCRX 程序阶段加载和运行应用程序的方法,这是调试程序的基 础 7,也是程序员所使用的方法。在创建打包程序的部分,还要介绍一些自动加载ObjectCRX 应用程序的方法,那些则是用户使用的方法。 1.2.2 思路 加载 ObjectCRX应用程序可以通过多种方法: � 使用 MANAGE 命令。 执行 ObjectCRX应用程序仅可在命令行输入程序中注册的命令。 1.2.3 步骤 下面的步骤演示加载和运行 ObjectCRX应用程序的方法: (1)使用MANAGE命令加载程序。在电子图板2010中,选择【工具/模块管理器】ribbon bar 菜单项,系统会弹出如图1.4所示的【模块管理器】对话框。 ? ? -? ? ? ? ? ? ? ? 到电 块管 的 C 对话 从文件列表 电子图板 201 如果要经常 管理器】对话 CRX 应用程 话框,在此对 表中选择所要 0 中。需要注 常使用某个程 话框中单击【 程序】对话框 对话框中选择 图 要加载的程序 注意的是,所 程序,就可以让 指定文件】 框。单击【打 择所要添加到 图 1.5 选 图 1.4 加载应用 序,勾选【加载 所有二次开发 让电子图板 2 按钮,系统会 打开】按钮, 启动组中的程 选择需要加载的 用程序 载】复选框, 发的程序必须 2004 在启动 会弹出如图 系统会弹出 程序。 的 CRX 应用程序 第 1 章 Ob ,就可以将选 须加载后才能 动时自动加载 1.5 所示的 【将文件添加 序 ObjectCRX 编程 选择的程序加 能使用。 载该程序。在 【选择需要加 加到启动组中 程基础 ·5· 加载 【模 加载 中】 ? ? -? ? ? ? ? ? ? ? Caxa 电子图板 CRX 二次开发指南 ·6· 注意:将程序添加到启动组,使其在电子图板启动时自动加载,对于 ObjectCRX 程序的调试很 有帮助。 1.2.4 效果 参见上一节的内容。 1.2.5 小结 学习本节内容之后,读者应该掌握使用 MANAGE 命令加载 ObjectCRX 应用程序的方 法,以及运行 CRX 程序的方法。 1.3 用向导创建 Hello,World 程序 1.3.1 说明 本节使用 ObjectCRX 向导创建一个 Hello,World 程序,了解向导创建的工程的基本结 构,并且学习使用 ObjectCRX 内嵌工具栏注册命令的方法。程序执行的结果与上一节的程 序一样,在 电子图板命令行显示“Hello,World!”字符串。 1.3.2 思路 使用向导创建 ObjectCRX 应用程序,能够大大简化操作的步骤,向导自动生成了大量 的代码。同学习 MFC 一样,如果了解了向导工作的内容,那么使用向导能够大大节省工 作量;如果不了解,则可能越用越糊涂。 1.3.3 步骤 (1)在Visual Studio 2010 集成开发环境中,选择【File/New/Project】菜单项,系统会弹出 【Project】对话框。在【Projects】选项卡的工程类型列表中选择【Visual C++/CAXA】,然 后在其工程列表中选择【ObjectCRX Projects】,在下面【name】文本框中输入工程名称Hello2, 在【Location】文本框中输入适当的工程位置,如图1.6所示。完成设置后,单击【OK】按 钮。 ? ? -? ? ? ? ? ? ? ? 示。 (2)在弹出 设置完毕之 出的对话框中 之后,单击【 图 中,选择 Crea Finish】按钮 图 1.6 创建 cr ate a extensio 钮。 x 项目 n DLL(MFC sh 第 1 章 Ob hared)(O) 选项 ObjectCRX 编程 项,如图 1.7 程基础 ·7· 7 所 ? ? -? ? ? ? ? ? ? ? Caxa ·8 创建 a 电子图板 CR · (3) 向导所 建的各个文件 RX 二次开发指 所创建的动态 件及其作用: 指南 图1.7 态链接库的基 图 1.8 显示 创建空的动态 基本信息,如 示向导生成的 C 态链接库 如图 1.8 所示 CRX 工程信息 息 7 ? ? -? ? ? ? ? ? ? ? � St � R � R �St �Cr On_k 机制 实际 此文 � H 变量 口点 在vs 性窗 开发 C:\P 附件 tdAfx.h:预 Resource.h:资 Resource Files tdAfx.cpp: 预 rxEntryPoint. kUnloadAppM 制注册一个新 际上,这就是 文件中包含ad Hello1.cpp:应 量是在DllMai 点函数,一般 (4)编译环境 项目要准确 s2010的Solu 窗口中选择【 发包下头文件 Program Files 然后再属性 件库文件所在 编译头文件的 资源标记的声 s\Hello1.rc2: 预编译文件 .cpp 程序入 Msg。On_kInit 新命令。这个 是运行CRX 程 ddCommand 应用程序入口 in 函数中使 般来说不用注 境设置 确编译需要附 ution Explorer C/C++ / Gen 件所在的目录 s\CAXA\CAX 性窗口上选择 在目录 的创建。 声明。 工程的第二 口类所在的文 tAppMsg实际 个命令同电子 程序的方法。 函数,其封装 口点。其中包含 使用,一般不用 注意。 附加项目所需 r窗口选择He neral】,然后在 录 XA DRAFTM 图 择【Linker\Gen 二个资源文件 文件。其中包 际上这里它只 图板的内部命 On_kUnload 装在AddCom 含_hdllInstan 用注意。 D 需要的头文件 ello1项目,右 在Additional MECHANICA 1.9 附加头文 neral】,然后 件。 包含两个函数 做一件事情 命令一样,可 dAppMsg函数 mmand 函数 nce 变量和D DllMain 函数 和库文件。 右键选择“属 Include Dire AL\2011\CRX 文件目录 后在 Additiona 第 1 章 Ob 数On_kInitApp ,就是使用电 可以直接在命 数则在程序被 ,用于向电子 DllMain 函数 数是动态链接库 属性”,弹出 ectories项中, X\Inc,如下图 al Library Dir ObjectCRX 编程 pMsg和 电子图板的命 命令行中执行 被卸载时所调 子图板注册命 数。 _hdllInst 库(DLL)的 出属性窗口, ,附加Object 图1.9 rectories 项中 程基础 ·9· 命令 行。 用。 命令。 tance 的入 在属 CRX 中, ? ? -? ? ? ? ? ? ? ? Caxa ·10 C:\P void { cr } 码, class { publ a 电子图板 CR 0· Program Files 注意:将 Con 认工程 (5)hellow d cmdHello() rxutPrintf(_T(" 需要附件头 #include "cr (6)注册 h 需要在项目 详细代码如 s CHello1App: ic: CHello1App( { RX 二次开发指 s\CAXA\CAX nfiguration p 程编译出现警告 world 函数如下 "\nHello World 头文件如下: rxutcds.h" hello 命令。 目的 CrxEntry 如下: :public AcRxA ():AcRxArxAp 指南 XA DRAFTM 1. roperties/Ge 告。 下: d!")); yPoint.cpp 文 ArxApp pp() MECHANICA .10 附件库文件 eneral/Target 文件中,添加在 AL\2011\CRX 件目录 t Extension 参 在电子图板中 X\Lib,如下图 参数设置为.crx 中注册命令和 图1.10 x 能够避免默 和卸载命令的 的代 ? ? -? ? ? ? ? ? ? ? 第 1 章 ObjectCRX 编程基础 ·11· } virtual AcRx::AppRetCode On_kInitAppMsg(void *pkt) { // TODO: Load dependencies here // You *must* call On_kInitAppMsg here AcRx::AppRetCode retCode =AcRxArxApp::On_kInitAppMsg(pkt); // TODO: Add your initialization code here //注册命令 crxedRegCmds->addCommand(_T("HelloApp"),_T("GHello"),_T("Hello"),ACRX_CMD_MOD AL,&cmdHello); return (retCode) ; } virtual AcRx::AppRetCode On_kUnloadAppMsg(void *pkt) { // TODO: Add your code here // You *must* call On_kUnloadAppMsg here AcRx::AppRetCode retCode =AcRxArxApp::On_kUnloadAppMsg(pkt); // TODO: Unload dependencies here //卸载命令 crxedRegCmds->removeGroup(_T("HelloApp")); return (retCode); } virtual void RegisterServerComponents() { } }; ? ? -? ? ? ? ? ? ? ? Caxa ·12 1.3 201 图 1 1.3 程序 从现 a 电子图板 CR 2· .4 效果 在 Visual S 1。使用 MA 1.9 所示的结 .5 小结 后面的程序 序,目的就是让 现在开始,我 RX 二次开发指 Studio 2010 中 ANAGE 命令 果。 序全部使用向 让读者经过分 我们要专注于 指南 中,按下快捷 加载生成的 图 向导来创建,规 分析掌握向导 于 ObjectCRX 捷键 F5 对程序 CRX 文件, 1.9 程序运行 规模也会更大 导的辅助作用 X 的精髓内容 序进行调试, 在命令行执 行的结果 大,这里用向 用,而不至于在 容。 ,系统会自动 执行 Hello 命令 向导生成简单 在大量的辅助 动启动电子图 令,能够得到 单的 Hello,W 助代码中迷失 图板 到如 World 失。 ? ? -? ? ? ? ? ? ? ?
/
本文档为【第01章 ObjectCRX编程基础】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索