明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: wxd20130610

arx的com接口编写

[复制链接]
 楼主| 发表于 2013-12-21 15:31:48 | 显示全部楼层
可能我没说清楚,我是想利用objectarx扩充activex vba函数库,因为activex中一些函数是没有的,功能不全,但objectarx是个庞大且高效的函数库,因此想到利用arx编写(制作)com接口来供vba调用。
 楼主| 发表于 2013-12-21 15:35:46 | 显示全部楼层
@风树
您说的没错,正是锁定和解锁文档的问题,现将调试好的源码贴出来:
        acDocManager->lockDocument(acDocManager->curDocument(), AcAp::kWrite, NULL, NULL, true);    //锁定文档
        AcGePoint3d ptStart(0, 0, 0);
        AcGePoint3d ptEnd(100, 100, 0);
        AcDbLine *pLine = new AcDbLine(ptStart, ptEnd);

        AcDbBlockTable *pBlockTable;
        acDocManager->curDocument()->database()->getBlockTable(pBlockTable, AcDb::kForRead);
        //acdbHostApplicationServices()->workingDatabase()->getBlockTable(pBlockTable, AcDb::kForRead);
        AcDbBlockTableRecord *pBlockTableRecord;
        pBlockTable->getAt(ACDB_MODEL_SPACE, pBlockTableRecord,AcDb::kForWrite);
        AcDbObjectId lineId;
        pBlockTableRecord->appendAcDbEntity(lineId, pLine);
        pBlockTable->close();
        pBlockTableRecord->close();
        pLine->close();

        acDocManager->unlockDocument(acDocManager->curDocument()); //解锁文档
        return S_OK;
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-18 12:30 , Processed in 0.160372 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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