;;; - ------------------------------------------------------------------------------ - ; ;;; - Funktionsname : DT:SUPPORT-PFAD-ADD - ; ;;; - Beschreibung : Fügt das übergebene Verzeichnis zur Liste der von Autocad - ; ;;; - durchsuchten Supportordner hinzu - ; ;;; - Parameter : PFAD [STRING] - Verzeichnisname - ; ;;; - Rückgabe : Liste [List] - Support-Verzeichnisse bzw. nil - ; ;;; - Beispiel : (DT:SUPPORT-PFAD-ADD "C:\\WINDOWS") - ; ;;; - ------------------------------------------------------------------------------ - ; (defun DT:SUPPORT-PFAD-ADD(PFAD / SUPPORT POS LISTE) (setq SUPPORT(getenv "ACAD")) (while (setq POS (vl-string-search ";" SUPPORT)) (setq LISTE (cons (substr SUPPORT 1 POS) LISTE) SUPPORT (substr SUPPORT (+ POS 2)) ) ) (if(and(=(type PFAD) 'STR) (setq PFAD(vl-string-translate "/" "\\" PFAD)) (setq PFAD(vl-string-right-trim "\\" PFAD)) (vl-file-directory-p PFAD) ) (progn (if (not(member (strcase PFAD)(setq Liste(mapcar 'strcase (reverse LISTE))))) (progn (setenv "ACAD" (apply 'strcat (mapcar '(lambda(x) (strcat X ";")) (cons PFAD LISTE))) ) (setq LISTE (cons PFAD LISTE)) ) ) ) ) LISTE ) ;;; - ------------------------------------------------------------------------------ - ; ;;; - ------------------------------------------------------------------------------ - ; ;;; - Funktionsname : DT:SUPPORT-PFAD-DEL - ; ;;; - Beschreibung : Entfernt das übergebene Verzeichnis von der Liste der von - ; ;;; - Autocad durchsuchten Supportordner - ; ;;; - Parameter : PFAD [STRING] - Verzeichnisname - ; ;;; - Rückgabe : Liste [List] - Support-Verzeichnisse bzw. nil - ; ;;; - Beispiel : (DT:SUPPORT-PFAD-DEL "C:\\WINDOWS") - ; ;;; - ------------------------------------------------------------------------------ - ; (defun DT:SUPPORT-PFAD-DEL(PFAD / SUPPORT POS LISTE DIR FOUND?) (or(and(=(type PFAD) 'STR) (setq PFAD(vl-string-translate "/" "\\" PFAD)) (setq PFAD(vl-string-right-trim "\\" PFAD)) ) (setq PFAD nil) ) (setq SUPPORT(getenv "ACAD")) (while (setq POS (vl-string-search ";" SUPPORT)) (setq DIR(vl-string-right-trim "\\" (vl-string-translate "/" "\\" (substr SUPPORT 1 POS) ) ) ) (if(equal(strcase PFAD)(strcase DIR)) (setq FOUND? 'T) (setq LISTE (cons DIR LISTE)) ) (setq SUPPORT (substr SUPPORT (+ POS 2))) ) (setq LISTE(reverse LISTE)) (if FOUND? (setenv "ACAD" (apply 'strcat (mapcar '(lambda(x) (strcat X ";")) LISTE)) ) ) LISTE ) ;;; - ------------------------------------------------------------------------------ - ;