nanoCAD 20 ИНЖЕНЕРНАЯ ЭКОСИСТЕМА
Показать сообщение отдельно
 
Непрочитано 01.08.2006, 10:07
#9
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 36,982


(getenv "ACAD") - получишь пути поддержки текущего профиля када.
(setenv "ACAD") - соответственно установишь.
Насчет версий arx. Если уже получен список нужных arx, попробуй такое:
Код:
[Выделить все]
(foreach file_counter	files_list
    (if	(not (member (strcat (vl-filename-base file_counter) ".arx") (arx)))
      (if
	(vl-catch-all-error-p (vl-catch-all-apply 'arxload (list file_counter)))
	 (princ	(strcat	"\nНе могу загрузить файл "
			(vl-filename-base file_counter)
			".arx"
			) ;_ end of strcat
		) ;_ end of princ
	 ) ;_ end of if
      ) ;_ end of if
    ) ;_ end of foreach
---
Добавлено: имена должны быть полными. Для их получения я использую функцию от ZZZ с http://www.autocad.ru/cgi-bin/f1/board.cgi?t=19612AN :
Код:
[Выделить все]
;|=============================================================================
*    функция z-files-in-directory возвращает список файлов находящаяся в заданной
* директории
*    Автор : Зуенко Виталий (ZZZ)
*  Параметры:
*    directory  путь к папке например "D:\\Мои документы\\ZEF\\Lisp"
*    pattern    шаблон например "*.lsp" или список '("*.dwg" "*.dxf")
*    nested    искать в вложенных папках: t (да) или nil (нет)
* Пример вызова:
(z-files-in-directory "D:\\Мои документы\\ZEF\\Lisp" "*.lsp" t)
(z-files-in-directory "D:\\Мои документы\\ZEF\\Lisp" '("*.lsp" "*.fas") t)
=============================================================================|;
(defun z-files-in-directory (directory pattern nested /)
  (if (not (listp pattern))
    (setq pattern (list pattern))
    ) ;_ if
  (if nested
    (apply
      'append
      (append
	(mapcar	'(lambda (_pattern)
		   (mapcar '(lambda (f) (strcat directory "\\" f))
			   (vl-directory-files directory _pattern 1)
			   ) ;_ list
		   ) ;_ lambda
		pattern
		) ;_ mapcar
	(mapcar
	  '(lambda (d)
	     (z-files-in-directory
	       (strcat directory "\\" d)
	       pattern
	       nested
	       ) ;_ z-files-in-directory
	     ) ;_ lambda
	  (vl-remove
	    "."
	    (vl-remove ".."
		       (vl-directory-files directory nil -1)
		       ) ;_ end of vl-remove
	    ) ;_ vl-remove
	  ) ;_ mapcar
	) ;_ append
      ) ;_ append
    (apply
      'append
      (mapcar '(lambda (_pattern)
		 (mapcar '(lambda (f) (strcat directory "\\" f))
			 (vl-directory-files directory _pattern 1)
			 ) ;_ list
		 ) ;_ lambda
	      pattern
	      ) ;_ end of mapcar
      ) ;_ end of apply
    ) ;_ end of if
  ) ;_ end of defun
__________________

---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Размещение рекламы