明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 14907|回复: 30

飞诗LispEdit贴合ACAD

    [复制链接]
发表于 2019-8-13 16:00:21 | 显示全部楼层 |阅读模式
本帖最后由 东升铮 于 2022-12-23 17:19 编辑

随着AuToDesk高版本CAD的更新,过去那些便于绘图及开发的不少程序已经落下,这里包括了今天说的飞诗编辑器;飞诗编辑器是一款较适合新手入门的编辑器,明而了然的代码注明及错误提示,使开发操作更简便明了,也减轻了后期修改BUG的难度。既然是适合新手选用的,那今天来说说在CAD调用飞诗编辑的操作及平常遇到的问题。


调试的高版本为2020版,比较的低版本为2007版。


第一: 高版本如何调用编辑器

在高版本中,从编辑器里直接是会出现提示找不到脚本错误

在这里只要把编辑器路径添加到支持搜索路径,重新打开就好。

第二:如何用vlisp从CAD支持并打开编辑器

这里需要LispEdit支持搜索路径

低版本需加载link35.dll      高版本需加载link40.dll   


当然,你也可以编程把这段操作写出来,不过,在高版本别忘了提供他的搜索路径,高版本需要加载他其他一些文件,如debug.vlx等;

低版本就没有那么复杂,只要提供link35.dll的位置就好了。后续未完,待更新。。。

  1. ;;说明:高版本加载飞诗.支持并打开飞诗>

  2. ;;by:东升铮
  3. (defun c:fse (/ str acad file)
  4.   (setq str (getvar "acadver"))
  5.   (setq acad (atof (substr str 1 (- (strlen str) 12))))
  6.   (setq file "d:\\安装包\\fsbjq\\ ")
  7.   (if
  8.     (> 18.0 acad)
  9.      (progn
  10.        (command "netload" (strcat file "link35.dll"))
  11.        (startapp (strcat file "lispedit.exe"))
  12.      )
  13.      (progn
  14.        (if (/= (getvar "secureload") 0)
  15.    (setvar "secureload" 0)
  16.        )
  17.        (command-s "netload" (strcat file "link40.dll"))
  18.        (startapp (strcat file "lispedit.exe"))
  19.        (setvar "secureload" 1)
  20.      )
  21.   )
  22. )

在这里楼主就不去测试其他版本的使用效果。大家也可以通过修改代码中的"18.0(Acad2010)"版本号来适应自己的用法。

对应参照二开版本对应表修改适应版本

=======
如果还有什么不懂的话,楼主可跟帖回复。


评分

参与人数 4明经币 +4 金钱 +20 收起 理由
love1030312 + 1 赞一个!CAD2020 win11 此方法可行 成功了
yuanziyou + 1 帅呆了
mophester + 1 + 20 很给力!
taoyi0727 + 1 好东西 2020都可以用

查看全部评分

 楼主| 发表于 2022-2-10 20:41:49 | 显示全部楼层

看样子没什么问题、如果你用的版本经过反编译等操作将无法连接使用、
顺便说一下飞诗编辑器的大概调试原理:
检索CAD窗口标题获取软件PID
(当你的CAD标题不为飞诗LispEdit调试几个字的时候、程序将获取不到信息、也将无法调试)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
回复 支持 1 反对 1

使用道具 举报

发表于 2020-8-24 23:28:52 | 显示全部楼层

支持,正在考虑怎么在高版本上使用飞诗。我连2016都无法调试。
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2020-1-1 03:50:57 | 显示全部楼层
G〆h 发表于 2019-12-28 21:22
(command-S "NETLOAD" (STRCAT FILE "link40.dll"))
无法加载程序集。错误详细信息: System.IO.FileNotFou ...

第一!路径名不对!第二,版本对应,高版本加载LINK40.DLL,低版本就是LINK35.DLL
回复 支持 0 反对 1

使用道具 举报

发表于 2019-9-21 17:04:52 | 显示全部楼层
2020版本
飞诗不能加载command "拒绝"
                     vl-cmdf 没有反应
回复 支持 0 反对 1

使用道具 举报

发表于 2019-9-21 14:21:42 | 显示全部楼层
能用吗?
原来是,要用飞诗,是先打开飞诗,再用飞诗打开CAD
楼主这个方法好像只用CAD来打开飞诗

本来飞诗不支持的版本还是不支持
回复 支持 0 反对 1

使用道具 举报

发表于 2022-2-1 18:06:58 | 显示全部楼层
测试2021,添加搜索位置和信任位置的飞诗lisp文件夹,此方法可用
回复 支持 1 反对 0

使用道具 举报

发表于 2019-8-13 23:39:25 | 显示全部楼层
支持,正在考虑怎么在高版本上使用飞诗。我连2016都无法调试。
发表于 2019-8-14 12:38:20 | 显示全部楼层
用用看效果如何
发表于 2019-9-21 14:30:48 | 显示全部楼层
可以了  原来是没有把搜索路径设置好
楼主帮大忙了
 楼主| 发表于 2019-9-27 04:52:42 | 显示全部楼层
taoyi0727 发表于 2019-9-21 17:04
2020版本
飞诗不能加载command "拒绝"
                     vl-cmdf 没有反应

飞诗一般不支持直接command 的,貌似或许也是高版本CAD问题,高版本CAD有些是需要”command-S“.
发表于 2019-12-28 21:22:43 | 显示全部楼层
(command-S "NETLOAD" (STRCAT FILE "link40.dll"))
无法加载程序集。错误详细信息: System.IO.FileNotFoundException: 未能加载文件或程序集“file:///D:\myLisp\link40.dll”或它的某一个依赖项。系统找不到指定的文件。
文件名:“file:///D:\myLisp\link40.dll”
   在 System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   在 System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   在 System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, Boolean suppressSecurityChecks, StackCrawlMark& stackMark)
   在 System.Reflection.Assembly.LoadFrom(String assemblyFile)
   在 Autodesk.AutoCAD.Runtime.ExtensionLoader.Load(String fileName)
   在 loadmgd()

警告: 程序集绑定日志记录被关闭。
要启用程序集绑定失败日志记录,请将注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD)设置为 1。
注意: 会有一些与程序集绑定失败日志记录关联的性能损失。
要关闭此功能,请移除注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog]。
nil
发表于 2020-1-3 20:14:19 | 显示全部楼层
没有看明白!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-12-23 10:13 , Processed in 0.233264 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表