我对Lisp程序完全一无所知。不幸的是,我们办公室里那个让事情继续发展的家伙跑掉了,加入了马戏团,带走了他所有的玩具,我们中的一些人正在尝试升级,同时仍在维护我们的宏。如果您能提供任何帮助,我们将不胜感激。
之前在2007年Acad2007中,他让我们使用复制此Acaddoc。lsp文件到我们所有的支持目录(Acad、Land Desktop、Civil3d)。我们还将所有lisp例程复制到桌面/笔记本电脑。当时的想法是,网络驱动器将始终是最新的和更新的,但如果我们远离网络,我们仍然可以从我们的电台运行东西。
不幸的是,在升级到Acad2009和Acad2011 Civil3D后,我一直无法使其工作,我不知道我做错了什么。
这是阿卡多克。我们使用的lsp:
- ;;; ACADDOC.LSP Created to Load Earth Tech Routines
- ;;;
- (setq S::STARTUP (append S::STARTUP AecCStartup))
- (princ "Starting Load")
- (princ "Network Check... ");
- (if (findfile "L:/library/cadmasters/acadsta/acad/lisp/network.up")
- (progn
- (princ "OK.\n")
- (defun ETload (parm / full_filename)
- (setq full_filename (strcat "L:/library/cadmasters/ACADSTA/ACAD/LISP/" parm))
- (if (findfile (strcat full_filename ".lsp"))
- (load full_filename)
- (princ (strcat "AutoLISP File (" full_filename ") Not Found\n"))
- );End if
- (princ)
- );End def
- );Pend
- (progn
- (princ "\nServer DOWN... Resetting LISP To C: Drive... ")
- (getstring "Press <RETURN> To Acknowledge Problem: ")
- (defun whload (parm / full_filename)
- (setq full_filename (strcat "C:/ACAD/LISP/" parm))
- (if (findfile (strcat full_filename ".lsp"))
- (load full_filename)
- (princ (strcat "AutoLISP File (" full_filename ") Not Found\n"))
- );End if
- (princ)
- );End def
- );Pend
- );End if
- ;-- Load Earth Tech Standard LISP Routines
- (ETload "Earth-Tech")
- ;-- Set All Default Variables
- (setvar "UCSICON" 0)
- (setvar "CMDECHO" 0)
- (princ)
我知道它正在寻找Earth-Tech.lsp。它在C:/Acad/Lisp处加载。如果需要的话,我可以把它打印出来。
下面是我得到的错误:
- ; error: no function definition: ETLOAD
- AutoCAD menu utilities loaded.Starting LoadNetwork Check...
- Server DOWN... Resetting LISP To C: Drive... Press <RETURN> To Acknowledge
- Problem: *Cancel*
- ; error: Function cancelled
宏无法工作。我怀疑我在错误的位置归档了一些东西,但我不知道是什么或在哪里。
坦率地说,我真的不需要在网络上查找例程,我很乐意只在我的笔记本电脑上运行它,所以如果你想建议取消网络检查,以及如何摆脱它,这对我来说是可行的。我们中的大多数人现在都在笔记本电脑上,可以在远离网络的情况下工作,所以现在这并不那么重要。
我很乐意接受任何建议,并且可以尝试回答任何关于文件位置或其内容的问题。
非常感谢。 |