Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: dds от 23-10-2014, 15:47:49

Название: Добавление папки в список "доверительных месторасположений"
Отправлено: dds от 23-10-2014, 15:47:49
Существует ли способ изменить список папок "доверительного месторасположения" по средствам lisp команды или AcadAPI из внешнего приложения?

ПС Lisp команда выполняется примерно так:

Код - C# [Выбрать]
  1.             String instruction =
  2.                 "(command \"_netload\" \"C:\\\\AcadExt\\\\Xref\\\\AcadMyPlugin.dll\" \"DeleteBadXref\")(command)\n";
  3.  
  4.             docType.InvokeMember("SendCommand", System.Reflection.BindingFlags
  5.                 .InvokeMethod, null, activeDoc, new Object[] {instruction});
  6.  
Название: Re: Добавление папки в список "доверительных месторасположений"
Отправлено: Александр Ривилис от 23-10-2014, 15:57:52
Это легко выполняется при помощи lisp:
Код - Auto/Visual Lisp [Выбрать]
  1. (setq dir "C:\\TestDir") ;; Новый добавляемый каталог
  2. (setq oldTrustedPaths (getvar "TRUSTEDPATHS"))
  3. ;; Не забываем проверить что такого каталога еще не было
  4. (if (null (vl-string-search dir oldTrustedPaths)) (setvar "TRUSTEDPATHS" (strcat oldTrustedPaths ";" dir))
Название: Re: Добавление папки в список "доверительных месторасположений"
Отправлено: dds от 23-10-2014, 16:01:04
Спасибо. Кстати, как показал лог ProcessMonitor так-же есть возможность найти эти данные в реестре:

Код - Microsoft Registry [Выбрать]
  1. HKEY_CURRENT_USER\Software\Autodesk\AutoCAD\R19.1\ACAD-D001:419\Profiles\<<Профиль без имени>>\Variables

ключ: TRUSTEDPATHS
Название: Re: Добавление папки в список "доверительных месторасположений"
Отправлено: Александр Ривилис от 23-10-2014, 16:11:38
Спасибо. Кстати, как показал лог ProcessMonitor так-же есть возможность найти эти данные в реестре:

Код - Microsoft Registry [Выбрать]
  1. HKEY_CURRENT_USER\Software\Autodesk\AutoCAD\R19.1\ACAD-D001:419\Profiles\<<Профиль без имени>>\Variables

ключ: TRUSTEDPATHS
Это для конкретной версии AutoCAD, конкретной локализации и для конкретного профиля. Но AutoCAD может запускаться с другим профилем (с тем который текущий).
Название: Re: Добавление папки в список "доверительных месторасположений"
Отправлено: Алексей Кулик от 23-10-2014, 16:59:49
Не советую работать с реестром из-под запущенного AutoCAD: изменения могут не "подхватиться" при закрытии приложения.