AutoCAD CUIX:在我的宏中将我的 LISP 例程的映射驱动器 URL link 与同一文件的 Google 基于 Web 的共享驱动器 link 交换

AutoCAD CUIX: Swapping my LISP routine’s mapped drive URL link in my Macro with the Google Share Drive web based link of the same file

我的 LISP 例程在我工作的 Google 共享驱动器上。我的自定义功能区中有按钮使用映射的驱动器号 URL link.

调用我的例程

URL Link 我的自定义宏中的示例:

目标:

正在尝试与办公室中的其他 CAD 用户共享此文件。

问题:

不同的 CAD 用户有不同的映射驱动器号(例如:H:\ 或 S:\ 而不是 G:)。 每次我更新 CUIX 文件时,尽量避免四处走动并手动更改驱动器号以匹配它们的映射(因为路径会被覆盖)。 想使用基于网络的通用 Google Share Drive link(通过选择文件并在 Google 驱动器中选择“获取 link”并复制 link ).

交换:

我的宏示例中的当前 URL 映射(如果上图未显示):

^C^C(加载“G:\shardrive\CAD_Department\CAD_menu\LISP\My_routine.lsp”);My_routine;

与 Google 共享驱动器 link 交换的示例(不工作):

^C^C(load "https://drive.google.com/file/d/0BlU92IihdhhcnRlcl9mWxl/view?usp=sharing&resourcekey=0-0VxGZXU_D8YjtjgjzQZnQ");My_routine;

我试过的另一种方法 ^C^C(命令-s "_browser" "https://drive.google.com/file/d/0BlU92IihdhhcnRlcl9mWxl/view?usp=sharing&resourcekey=0-0VxGZXU_D8YjtjgjzQZnQ/");My_routine;

有人知道宏的正确语法吗?

提前致谢!

听起来需要一种更可配置的方法,用户可以将驱动器映射到他们想要的任何路径(G:、S:\ 或其他)。但是他们仍然可以使用所述驱动器中的工具。

要做到这一点,三件事会有所帮助:

1.) 开始使用 AutoCAD 配置文件。可以编写安装脚本来为用户创建配置文件。此配置文件将包含一个用于 LISP 代码位置的支持文件路径条目。该路径会根据用户将 google 驱动器映射到的位置而有所不同。
2.) 在 AutoCAD 启动时从配置文件加载所有 LISP,这可以通过 acaddoc.lsp 文件来完成。
3.) 从 CUI 按钮

中删除所有 hard-coded 加载语句

对于我在上面的评论中提到的关于仅通过 CUIX 宏(而不是通过 LISP 例程)打开文件夹的问题,我找到了这个可能的解决方案:

^C^C(startapp "explorer" (vl-string-translate "/" (chr 92) "C:/TEMP"));

感谢 Paul_Gander,他的评论位于此处:

https://forums.autodesk.com/t5/autocad-forum/open-a-folder-with-a-button/td-p/3010928

需要更多测试,但到目前为止一切顺利...

谢谢保罗!