明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 5324|回复: 22

用VC++如何创建AutoCAD实例?

  [复制链接]
发表于 2004-9-30 15:02:00 | 显示全部楼层 |阅读模式
用VC++如何创建AutoCAD实例?
发表于 2004-9-30 16:49:00 | 显示全部楼层
用OLE Automation,好像也不麻烦,晚上我写一个程序明天传上来。
 楼主| 发表于 2004-9-30 17:04:00 | 显示全部楼层

回复

谢谢zfbj.
 楼主| 发表于 2004-9-30 19:48:00 | 显示全部楼层

回复

可以了,查了些资料,并不太理解,因为知识面太窄! Setup.exe启动AutoCAD2005英文版 (自己做安装程序,试着玩: 创建copyfolder, shortcut, profile, ...) 刚完成一点儿. 参考[转载]: 用'添加类'->'MFC'->'类型库中的MFC类'导入AutoCAD的tlb类型库. 我还不确定"AutoCAD.Application"该怎么写,我只装了AutoCAD2005,同时有多个版本时,是不是应该写成"AutoCAD.Application.16.1"呢? IAcadApplication AcadApp;

void getAcad()
{
// This function will find AutoCAD in the registry, and launch it (if it is
not launched already).
HRESULT hr=NOERROR;
CLSID clsid;
LPUNKNOWN pUnk=NULL;
LPDISPATCH pDisp=NULL;

CoInitialize(NULL);
hr=::CLSIDFromProgID(L"AutoCAD.Application", &clsid);
if(SUCCEEDED(hr))
{
if(::GetActiveObject(clsid,NULL,&pUnk)==S_OK)
{
// Already opened Acad Session...attach ourselves
VERIFY(pUnk->QueryInterface(IID_IDispatch,(LPVOID*) &pDisp)==S_OK);
AcadApp.AttachDispatch(pDisp,FALSE);
pUnk->Release();
}
else
// We must invoke our instance of AutoCAD...
VERIFY (AcadApp.CreateDispatch(clsid)==TRUE);
AcadApp.SetVisible(TRUE);
}
else
AfxMessageBox("AutoCAD is Not Registered!");
}

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2004-9-30 20:23:00 | 显示全部楼层

回复

zfbj版主,希望看到你的代码.
发表于 2004-9-30 20:55:00 | 显示全部楼层
刚写完,呵呵。


在你的基础上有了一点进步,能够创建一条直线了,真的是一小步。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2004-9-30 20:57:00 | 显示全部楼层
希望我们共同做一个“安装包”的模板,以后大家自己做软件都可以使用了。


做“安装包”不是老板的专利!
 楼主| 发表于 2004-9-30 21:09:00 | 显示全部楼层

回复

zfbj版主,看到你的贴子,很高兴,我原来只是自己想这么做,有些人肯定不能接受我这种做法,放着好好的,方便的InstallShield, Wise的安装程序不用,浪费时间.


做这个安装包要视需要而定,我先按我的想法做一个,以后集成更多的功能.


第一次有人响应我的做法(当然也没对别人说过).
发表于 2004-9-30 21:25:00 | 显示全部楼层
我实际上不会用Install Shield来做,因为在Install 和Wize中同样要使用COM来操作AutoCAD完成这些初始化操作,两者的脚本语言熟悉起来需要时间啊。
 楼主| 发表于 2004-9-30 23:51:00 | 显示全部楼层

回复

本帖最后由 作者 于 2004-10-1 8:40:41 编辑

是啊,慢慢积累吧.


国庆节快乐!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 02:03 , Processed in 0.164834 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表