CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 2019 开发者帮助

处理外部应用程序

2024-5-18 17:57| 发布者: admin| 查看: 71| 评论: 0|原作者: admin|来自: 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   苏公网安备32011402011833)

GMT+8, 2024-12-15 22:10

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部