有没有人用C++操作AutoCAD的????????????

addfourliu 2012-12-11 09:51:36
小弟装的是AutoCAD 2010,想用C++打开AutoCAD,代码如下:

hres = acApp.CoCreateInstance(L"AutoCAD.Application.18", NULL, CLSCTX_LOCAL_SERVER);
hres = acApp->put_Visible(TRUE);


这段代码在xp系统中,完全没有问题,不过我现在系统是win7的,执行完第一句话,进程中会有acad.exe存在,但是ci9shi得acApp却是空的,求高手指点一二。。。。
...全文
325 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
彭家老三 2012-12-27
  • 打赏
  • 举报
回复
感觉有点像是二次开发神马的。不明觉厉。
palleexu 2012-12-26
  • 打赏
  • 举报
回复
呵呵,楼主是好人,学习并接分。
addfourliu 2012-12-26
  • 打赏
  • 举报
回复
引用 2 楼 silyvin 的回复:
lz做的是什么,最近想搞搞objectarx
也没有什么专业,小打小闹型的。。。
pois 2012-12-26
  • 打赏
  • 举报
回复
lz做的是什么,最近想搞搞objectarx
addfourliu 2012-12-26
  • 打赏
  • 举报
回复
问题已经解决,这和系统注册表的形式相关,我用的是64位的,换成32位的就可以了。。。 顶贴散分呀。。。
多 文 档 命 令 行 一、概括: 作者长期从事 CAD 软件的使用、对比、二次开发技术的研究工作,特别对于欧特克(Autodesk)软件公司的旗舰产品 AutoCAD 以及其二次开发平台 ObjectARX for AutoCAD ,它公布许多的应用程序 AutoCAD 本身的组件、或者组件的开发接口。经作者的多年分析,可以对它进行如下描述:其核心二次开发技术 ObjectARX 定义一个分层式软件开发模型,其存在三大技术:图形文件的读写及内存管理、实体的屏幕显示、人机交互。 二、软件工程的由来: 使用 AutoCAD 的技术人员都知道,从 AutoCAD 2000 以后的各个版本, AutoCAD 中的命令的执行具有以下的特性,在一个命令执行没有完成之前就可以切换到另一个图形窗口执行别的命令,就像切换到别的应用程序。 从代码编制的角度讲,就是在一个程序的代码执行序列中的两个独立过程中的代码相互切换,从知道 AutoCAD 绘图的这个功能现象后,作者就对其很感兴趣,一直至今。 AutoCAD 二次开发的好处在于免费提供了基于 Visual C++ 集成开发环境的所必需的头文件、输入库、动态链接库。通过研读头文件,仔细阅读帮助文档,终于明白这个技术可以称为人机交互技术的组成部分,也是 ObjectARX for AutoCAD 隐藏的技术之一,这些技术就隐藏在 ObjectARX 应用程序同 AutoCAD 作用并进行用户输入的许多个全局函数中,其函数名称具有如下命名规则, acedGetXXX 。 由于这些函数同以往的控制台应用程序中调用的 C 语言库中的控制台输入输出函数具有初级的类似,于是作者确定自己的研究方向就是将这些用户输入函数的实现技术搞清楚,同时最好编制出原型程序,于是在 Microsoft Windows 2000 上安装 AutoCAD 2000 、ObjectARX for AutoCAD 2000 以及符合 ObjectARX 开发条件的 Visual C++ 6.0 ,开始的研究之路。 软件工程名称就定义为多文档命令行。 三、成功的结果: 近十年来的研究,经过各种各样技术路线的努力,终于得到了回报,做出了自己的原型程序,原型程序的目标是模拟 AutoCAD 使用者可以看到的下列组成部分:多文档同时编辑、命令行窗口、主窗口菜单、字符屏幕窗口、多文档命令,原型程序也同时实现了初级的全局用户输入函数、利用 MFC 序列化技术实现命令扩展、利用 MFC 扩展技术实现多文档框架下“文档-视图框架”的扩展、以及使用全局用户输入函数调用多文档命令等。 四、成功后的思考: 当自己的努力走到这一步之后,就明白以下一些问题:为什么 AutoCAD R14 不是多文档界面?这些全局用户输入函数是如何协调用户的输入以及操作系统的输入?全局用户输入函数是否同菜单宏相联系?怎样联系? 更推而广之,如果上升到人机交互技术组成的话,那么不光是 CAD 图形界面的软件提供二次开发技术需要它?其他软件也一样。 作者在按照 ObjectARX 提供头文件的技术线索,继续完善运行时刻扩展必备的 C++ 类库管理。 五、原型程序代码使用: 本电子邮件的附件为笔者努力的部分代码,主要是通过 MFC 扩展动态链接库编制多文档命令,实现开发用户自己登记、实现多文档命令,让开发用户查看“文档-视图框架”扩展部分详细代码。 使用环境: Visual C++ 6.0 ,请不要安装各种各样的 Service Pack,展开目录 MRXEXT 中,就相当于我们设计的 ObjectARX 代码,使用命令 Appload 调入这个 MFC 扩展动态连接库(MRXEXTD.MRX),可以使用的命令有:appload、test、call、doccreate、docClose 等。 使用过 Visual C++ 6.0 的开发者,可以明白原型程序的程序执行模块 multitopd.exe 和动态链接库执行模块 mrxextd.mrx 共享使用 MFC 动态链接库的调试版本。命令类是 MFC 扩展可序列化类,相关技术的应用不想多讲。 命令 test 是一个简单的多文档命令,在多文档界面下,如何测试多文档命令由研摩者自己思考。作者认为这也是理解 ObjectARX 应用开发的一个技术技巧。对应成员函数 MdMvEdCommandTest:: On_mdmvEdCommand() 命令 call ,对应成员函数 MdMvEdCommandCall :: On_mdmvEdCommand (),函数定义代码存在两段代码,研摩者可以编译、链接任一段代码或两段代码,同 ObjectARX 中 acedCmd 全局函数类似。 命令 doccreate ,对应成员函数 MdMvEdCommandDocCreate :: On_mdmvEdCommand (),这个命令可以将研发者“文档-视图”框架加入到 MDI 文档主框架中,值得注意的是新加入研发者文档没有文档执行上下文,所以不能够在它的视图窗口活动时敲入任何命令以执行,需要切换 multitopd.exe 应用程序提供的文档对应视图才能敲入命令。 命令 docclose ,对应成员函数 MdMvEdCommandDocClose :: On_mdmvEdCommand () ,这个用来关闭 mrxextd.mrx 研发者动态链接库执行模块中提供的“文档-视图”框架。 命令 appload ,由作者实现,完成扩展应用程序管理,现在不存在卸载命令,请原谅。 所有命令的敲入都不具备可见性,因为原型程序没有做命令行显示,请原谅。 六、作者联系: 如果想将自己的软件向使用者提供二次开发技术,欢迎来信联系。将附件改为 mrxext.exe ,再使用 WinRAR 或自解压。 电子邮箱:guzhenghong@sina.com ; 无兴趣者,勿恼。
【为什么还需要学习C++?】 你是否接触很多语言,但从来没有了解过编程语言的本质?你是否想成为一名资深开发人员,想开发别人做不了的高性能程序?你是否经常想要窥探大型企业级开发工程的思路,但苦于没有基础只能望洋兴叹? 那么C++就是你个人能力提升,职业之路进阶的不二之选。【课程特色】 1.课程共19大章节,239课时内容,涵盖数据结构、函数、类、指针、标准库全部知识体系。2.带你从知识与思想的层面从0构建C++知识框架,分析大型项目实践思路,为你打下坚实的基础。3.李宁老师结合4大国外顶级C++著作的精华为大家推出的《征服C++11》课程。【学完后我将达到什么水平?】 1.对C++的各个知识能够熟练配置、开发、部署;2.吊打一切关于C++的笔试面试题;3.面向物联网的“嵌入式”和面向大型化的“分布式”开发,掌握职业钥匙,把握行业先机。【面向人群】 1.希望一站式快速入门的C++初学者; 2.希望快速学习 C++、掌握编程要义、修炼内功的开发者; 3.有志于挑战更高级的开发项目,成为资深开发的工程师。 【课程设计】 本课程包含3大模块基础篇本篇主要讲解c++的基础概念,包含数据类型、运算符等基本语法,数组、指针、字符串等基本词法,循环、函数、类等基本句法等。进阶篇本篇主要讲解编程中常用的一些技能,包含类的高级技术、类的继承、编译链接和命名空间等。提升篇:本篇可以帮助学员更加高效的进行c++开发,其中包含类型转换、文件操作、异常处理、代码重用等内容。
接近成功的努力 联系人:顾正红 电话:010-66977105 电子邮件:guzhenghong@sina.com 这是一个解决诸如 MS OFFICE 活动文档检索与定位的技术说明性质的程序,同时还力争解决 诸如 MS OFFICE 活动文档采用内存数据的方法,直接送进数据库,而不是通过以往的努力( 通过中间文件,然后以二进制数据文件的形式送进数据库)。 开发环境: MS WINDOWS 2000 PRO, MS VC++6.0 , MS-OFFICE 2000 测试环境: MS WINDOWS 2000 或 MS-WINDOWS98 或 MS-WINDOWS XP 或 MS WINDOWS 2003;;;; MS OFFICE 2000 或 MS OFFICE XP 或 MS OFFICE 2003 有了数据库,和两个模块,就可以测试这个程序; 1、程序为 MDI 程序。 2、程序的第一个界面为列表的文档管理界面。; 3、关闭这个列表的文档视窗口; 4、执行(文件——打开)菜单命令,打开空白文档窗口,这是一个活动文档包容器窗口,执行菜单 命令(编辑——插入新对象),插入一个活动 MS WORD 2000 文档 5、向敲入任意文字 6、执行菜单命令(全文检索——检索)请输入一个文档中存在的关键词(最好关键词出现多次)程序提示出现次数; 7、执行菜单命令(全文检索——定位)请输入一个出现次数的序号;程序自动翻页定位; 8、执行菜单命令(文件——保存进库); 9、关闭文档窗口 10、退出程序; 11、启动程序 12、执行菜单命令(文件——从库打开),程序打开你刚才敲入的 WORD 文档。 程序已经在下列程序下进行了测试: MS WORD 2000 MS EXCEL 2000 MS POWERPOINT 2000 用户可以进行如下测试: 1、启动程序;程序界面为MDI界面,第一个界面为数据库中文档管理界面,数据库中已经予了一个电子表格(MS EXCEL 2000 的)文件,可以通过“文件”—“从库打开”命令打开; 2、执行“全文检索”——“单词全文检索”; 文件类型:doc ; 选择一个存放 MS OFFICE 文档的目录; 不选择在子目录中检索; 关键词随便输入; 3、执行后,系统会自动打开一个文档窗口,这个界面为目录文件的管理界面。 4、如果存在检索结果,用鼠标双击任意检索结果。系统会自动打开文档,并自动选择关键词和翻页。 5、将窗口切换到打开的文档窗口。 6、执行菜单命令(文件——保存进库); 7、关闭文档窗口 8、退出程序; 9、启动程序 10、执行菜单命令(文件——从库打开),程序打开你刚才保存的 WORD 文档。 在这样的技术背景下,作者还完成了 HTML 超文本文件的显示、全文检索、定位工作。 对于 HTML 文件可以实现在内存中打开进行全文检索,用浏览控件显示,然后就可以实现定位功能。所以这样对于 互联网上的无数的网页可以进行检索,从而形成简单的搜索引擎。 然而对于MS WORD 2000EXCEL 2000, POWERPOINT 2000, 就是没有实现在内存中连续打开多个文档。 同时实现的检索和定位的应用程序 AUTOCAD 2000 的 DWG 文件,实现 DWG 文件的关键词检索和定位功能,对于 工程勘察、工程设计、工程施工单位。 DWG 文件的检索与定位同样适用于 AUTOCAD 2002 或 AUTOCAD 2004 的 DWG 文件。 由于采用自动化技术的后绑定技术,所以适用多种 MS OFFICE 版本。 下载的链接库为 Release UNICODE 版本。
第1章 计算机应用基础知识概述 第2讲 计算机应用基础知识概述<二> 教学目标及基本要求: 1、掌握计算机软件系统的构成,软件的概念、特点及分类 2、了解指令、语言、程序的概念。 3、掌握计算机的基本工作原理。 教学重点: 软件的概念、特点,存储程序原理。 教学难点: 存储程序原理。 教学内容: 1、系统软件、应用软件 2、程序设计语言、计算机的指令、计算机的程序 3、计算机的工作原理、计算机的基本工作过程 教学时间: 1学时 主要内容: 1.3.3 计算机软件系统的构成 软件:在硬件设备上运行的各种程序以及有关资料,主要由程序和文档两部分组成。 1.系统软件 指管理、监控和维护计算机资源〔包括硬件和软件的软件。它是为整个计算机系统所 配置的、不依赖于特定应用领域的通用性软件。它扩大了计算机的功能,提高了计算机的 工作效率。系统软件是不可少,一般由生产厂家或专门的软件开发公司研发,其他程序都 在它的支持下编写和运行。系统软件主要包括操作系统和实用系统软件。 〔1操作系统 概念:操作系统〔Operating System,OS是直接运行在裸机上的最基本的系统软件,是系统软件的核心,其他软件必 须在操作系统的支持下才能运行。它控制和管理计算机系统内各种软、硬件资源,合 理有效地组织计算机系统的工作。 DOS、Unix、Windows〔95、98,2000、xp等 〔2实用系统软件 1. 语言处理程序 概念:将非机器语言的程序通过解释或翻译成与其相对应的机器指令后,使其被计算机 执行。 要点: 计算机只能直接识别和执行机器语言程序。非机器语言的程序必须通过解释或翻译 成与其相对应的机器指令后,才能被计算机执行 一般将用高级语言或汇编语言编写的程序称为源程序,而将已翻译成机器语言的程序 称为目标程序,不同高级语言编写的程序必须通过相应的语言处理程序进行翻译。 计算机将源程序翻译成机器指令时,通常有两种翻译方式:编译方式和解释方式,具 体如图1-7所示。 图1-7 计算机语言处理程序的翻译过程 经编译方式编译的程序执行速度快、效率高。 语言处理程序主要有:汇编程序、解释程序和编译程序。汇编程序用来处理汇编语 言编写的程序,它把汇编语言源程序翻译成机器语言程序。解释程序和编译程序用 来处理高级语言程序。现在大多数的高级语言都是编译型的,例如C++、Pascal等 。 数据库管理系统〔DBMS 完成数据库中对于数据的管理。当前流行的关系型DBMS有FoxPro、Access、Oracle、 Sybase等。 各种实用工具程序 实用工具程序能配合各类其他系统软件为用户的应用提供方便和帮助。如磁盘及文件管 理软件、瑞星、金山毒霸及诺顿等。在Windows的附件中也包含了系统工具,包括磁盘碎 片整理程序、磁盘清理等实用工具程序。 2.应用软件 概念:应用软件是指为解决用户某个实际问题而编写的程序和有关资料应用软件可分 为通用软件和专用软件,前者往往具有一定的通用性,为各行各业的人所使用,如Micr osoft Word、Adobe Photoshop等;后者没有通用性,只完成某一特定专业的任务,往往是针对某行业、某 用户的特定需求而专门开发的,如某个公司的ERP系统。 常用的应用软件有如下几种: 〔1办公软件包 办公软件包包括文字处理、桌面排版、电子表格处理、商务图表、演示软件等。如M icrosoft Office中的 word, excel, access 等。常用的办公软件包的结构功能与应用将在第3章中详细介绍。 〔2多媒体制作软件 多媒体制作软件是用于录制、播放、编辑声音和图像等多媒体信息的一组应用程序。 包括处理声音的 Wave Studio、Sound O'LD、Mixer等软件和处理图像的 VFW〔Video For Windows以及Photoshop、AutoCAD、3DS、PowerPoint、Authorware、FrontPage、Flash 等。 〔3其他应用软件 如辅助财务管理、大型工程设计、建筑装潢设计、服装裁剪、网络服务工具以及各种 各样的管理信息系统等应用软件。 3.嵌入式系统 概念:嵌入式系统是把计算机的硬件与软件嵌入到各种应用产品中的系统,包括构成软 件基本运行环境的硬件和操作系统两部分。 嵌入式处理器可以分为3类: 嵌入式微处理器 嵌入式微控制器 嵌入式DSP〔Digital Signal Processor。 4.程序设计语言 〔1程序设计的基本概念 程序=算法+数据结构 算法 算法可以看作是由有限个步骤组成的、用来解决问题的具体过程。 [例1.1]欧几里德算法〔求p、q的最大公约数。 a. 如果p>q,则交换p和q。 b. 令r为p/q的余数。 c. 如果r=0,则令g=q并终止;否则令p=q,q=r并

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧