可以从单独的命名空间 VLX 访问外部 ObjectARX 应用程序中定义的函数,但必须先发出 issue 才能导入函数。vl-arx-import 注意:Visual LISP IDE 仅在 Windows 上可用。
ObjectARX 函数标识为数据类型 EXRXSUBR。例如,以下示例标识为外部 ObjectARX 函数:startapp 命令:(键入 startapp) EXRXSUBR 如果从 AutoLISP 文件加载,则以下函数可以正常工作: (vl-doc-export 'StartApp2) (vl-load-com) (defun StartApp2 () (setq acadApp (vlax-get-acad-object)) (setq acadDoc (vla-Get-ActiveDocument acadApp)) (setq acadPrefs (vla-Get-Preferences acadApp)) (setq acadPrefFiles (vla-get-Files acadPrefs)) (setq hlpFile (vla-Get-HelpFilePath acadPrefFiles)) (startapp "winhlp32" hlpFile) (princ) ) (princ "\nStartApp2 is loaded, Type (StartApp2) to Run.") (princ) 但是,如果将 StartApp2 编译为单独的命名空间 VLX 并尝试调用该函数,则会失败并显示以下错误消息: “无函数定义:STARTAPP” 若要更正此问题,请使用该函数导入,如以下修订后的代码所示:startappvl-arx-import (vl-doc-export 'StartApp2) (vl-load-com) (vl-arx-import 'startapp) (defun StartApp2 () (setq acadApp (vlax-get-acad-object) ) 相关概念相关任务 |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2024-12-15 14:45
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.