CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

ObjectARX 开发指南

处理外部应用程序

2023-1-1 00:27| 发布者: admin| 查看: 366| 评论: 0|来自: AutoCAD

ObjectARX 应用程序可以加载和卸载其他 ObjectARX 应用程序,并获取当前正在加载的外部应用程序的列表,就像 AutoLISP 程序可以(使用)一样。以下调用加载名为 myapp 的程序:arxloaded

if (acedArxLoad("myapp") != RTERROR) {
    // Use acedInvoke() to call functions in "myapp". 
}

当你的程序完成myapp时,它可以通过调用来卸载它:acedArxUnload()

acedArxUnload("myapp");

该函数可用于获取所有当前加载的应用程序的名称,如以下代码所示:acedArxLoaded()

struct resbuf *rb1, *rb2; 
for (rb2 = rb1 = acedArxLoaded(); rb2 != NULL; rb2 = rb2->rbnext) { 
    if (rb2->restype == RTSTR) 
        acutPrintf("%s\n", rb2->resval.rstring); 
} 
acutRelRb(rb1); 

您可以调用函数和 彼此结合。以下示例卸载除当前应用程序之外的所有应用程序:acedArxLoaded()acedArxUnload()

struct resbuf *rb1, *rb2; 
for (rb2 = rb1 = acedArxLoaded(); rb2 != NULL; 
    rb2 = rb2->rbnext) { 
    if (strcmp(ads_appname, rb2->resval.rstring) != 0) 
        acedArxUnload(rb2->resval.rstring); 
} 
acutRelRb(rb1); 

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )

GMT+8, 2024-5-27 09:05

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部