【原创】精确获取vlx的加载位置
本帖最后由 baitang36 于 2023-10-19 11:00 编辑经过多次失败,终于成功了。把附件中的t8.vlx用任意方式加载,调用函数(syz-vlx-path)就能返回t8.vlx的带路径文件名。
把syz-vlx-path.fas打包到你的vlx中,用户加载后,调用函数(syz-vlx-path)就能返回你的vlx的带全路径文件名。不论用户用何种方式加载vlx,这种方法都可以精确获取vlx文件的位置。
这个方法的实现原理是,cad在加载vlx时保存了完整的路径名,我通过保留函数把它找了出来。t8的意思是前7个方案都失败了,第8个成功了。
将syz-vlx-path.fas打包进你的vlx,执行一句(setq path1(syz-vlx-path))就可得路径。
本帖最后由 baitang36 于 2022-2-24 15:46 编辑
没币的朋友可以在这里下载。
牛人,这个意义非常之重大,感谢楼主无私的付出 [url=forum.php?mod=redirect
加载时用一个独有的全局变量保存即可,解决了多个vlx覆盖问题 本帖最后由 baitang36 于 2022-2-23 21:48 编辑
Bao_lai 发表于 2022-2-23 21:44
如果多个VLX都用了这个fas,返回的值会是哪一个?
; ′íÎó: ¶áèëμÄ (°Ë&# ...
答案是最后加载的那个。后加载的vlx会冲掉前面加载的。我的fas没有加密,你可以自己改成你想要的名字。fas文件名,函数名,fas内的字符串名这三个地方必须同时改,否则会失败。
非常牛逼得功能 如果多个VLX都用了这个fas,返回的值会是哪一个?
; ′íÎó: ¶áèëμÄ (°Ë½øÖÆ) ×Ö·û2»Õyè·: 24
; ±àòëÖÕÖ1: ·¢ÏÖÖÂÃü′íÎó¡£ baitang36 发表于 2022-2-23 21:46
答案是最后加载的那个。后加载的vlx会冲掉前面加载的。我的fas没有加密,你可以自己改成你想要的名字。fa ...
感谢无私分享,这个解决路径的确实会有不少用。 Bao_lai 发表于 2022-2-23 21:51
感谢无私分享,这个解决路径的确实会有不少用。
用于软件的安装还是不错的,让用户第一次加载时的位置就是软件安装位置 tryhi 发表于 2022-2-23 22:00
[url=forum.php?mod=redirect
加载时用一个独有的全局变量保存即可,解决了多个vlx覆盖问题
海哥这个主意可行。 感谢分享,如果可以,希望能学习源码