CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 2019 开发者帮助

关于在其自己的命名空间中运行应用程序 (Visual LISP IDE)

2024-5-18 17:49| 发布者: admin| 查看: 95| 评论: 0|原作者: admin|来自: AutoCAD

关于在其自己的命名空间中运行应用程序 (Visual LISP IDE)

您可以在 Visual LISP 中为 VLX 应用程序定义命名空间。

注意:Visual LISP IDE 仅在 Windows 上可用。

以这种方式定义的 VLX 应用程序称为单独的命名空间 VLX。加载单独的命名空间 VLX 时,它会在其自己的命名空间中运行,而不是从中加载 VLX 的文档的命名空间中运行。使用自己的命名空间定义 VLX 应用程序的选项是 Make Application 过程的一部分。

如果尝试加载已加载的单独命名空间 VLX,则会收到指示此情况的错误。使用该函数卸载应用程序。该函数的语法是vl-unload-vlx

(vl-unload-vlx "appname")

对于 appname,请指定 VLX 文件名,不带路径或 .vlx 扩展名。

VLX 应用程序命名空间中定义的变量和函数仅对应用程序已知,而对加载应用程序时处于活动状态的绘图文档不了解。这使您可以保护变量不被其他应用程序或用户意外或有意覆盖。

VLX 应用程序可以将函数名称导出到文档命名空间,以使这些函数能够在该文档的上下文中访问。下图说明了其工作原理:

该图显示了包含两个打开的图形文档的 AutoCAD 进程;文档 1文档 2。针对 Document1 加载名为“Hangman”的 VLX 应用程序(例如,用户打开 Document1,然后从 AutoCAD 命令提示符加载 VLX 应用程序)。Hangman 应用程序建立了自己的命名空间,并在该命名空间中声明了函数和变量。bardooley

VLX 将函数导出到 Document1 的命名空间。当用户从 Document1 调用时,bar 会在应用程序的命名空间中运行。该函数对 Document2 未知,并且两个文档都无权访问该变量(因为 VLX 未导出该变量)。您可以将 hangman VLX 的另一个实例加载到 Document2 中,但此实例将具有自己的命名空间和 和 的副本。barbarbardooleybardooley

注意:加载尚未定义为具有自己的命名空间的 VLX 文件时,环境类似于加载的文件的环境。VLX 应用程序中定义的所有函数和变量都加载到文档的命名空间中。

路过

雷人

握手

鲜花

鸡蛋

最新评论

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

GMT+8, 2024-12-15 11:41

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部