Низкоуровневая функция диалога выбора папок
(defun _ru-dlg-folder (dlg_caption
root_dir
start_dir
is_can_edit
/
srv
result
) ;_ end of dlg_caption
;;;Диалог выбора папки
;|
Выбор Папки
Command: (_ru-dlg-folder "Выбор папки" (ru-dirs-get-root) (getvar
"DWGPREFIX") t)
"C:\.ru\cad\samples\dwg\Сантехника\Вентиляция\Вентиляция механическая"
Command: (_ru-dlg-folder "Выбор папки" (ru-dirs-get-root) (getvar
"DWGPREFIX") t)
nil
|;
(if (setq srv (vlax-get-or-create-object "ruFolderDlgSvr.FolderDialog"))
(progn
(setq result (vlax-variant-value
(vlax-invoke-method
srv
"SelectFolder"
dlg_caption
root_dir
start_dir
(ru-conv-value-to-wordbool is_can_edit)
) ;_ end of vlax-invoke-method
) ;_ end of vlax-variant-value
) ;_ end of setq
;; так работает, но ошибка
(if (= result "")
(setq result nil)
) ;_ end of if
) ;_ end of progn
(princ "
Не удалось запустить ruShellFileDlgSvr.FileDialog")
) ;_ end of if
result
) ;_ end of defun