Jump to content

nanoCAD 23, NET, загрузка типа лини


Recommended Posts

Получил какую-то странную ошибку при попытке загрузки типа линий из ncadiso.lin:

/// <summary>
/// Загрузка типа линии
/// </summary>
/// <param name="LineTypeName">Имя загружаемого типа линии</param>
/// <param name="LineTypeFileName">Файл, из которго загружать. По умолчанию acadiso.lin</param>
/// <exception cref="NullReferenceException"></exception>
public void LoadLineType(string LineTypeName, string LineTypeFileName = "ncadiso.lin")
{
    Document doc = Application.DocumentManager.MdiActiveDocument;
    Database db = doc.Database;
    using (Transaction trans = db.TransactionManager.StartTransaction())
    {
        LinetypeTable ltypeTable = trans.GetObject(db.LinetypeTableId, OpenMode.ForRead) as LinetypeTable;

        if (!ltypeTable.Has(LineTypeName))
        {
          db.LoadLineTypeFile(LineTypeName, LineTypeFileName);
        }
        trans.Commit();
    }
}

На LoadLineTypeFile при условии использования LineTypeFileName "по умолчанию" получаю ошибку

Ошибка во время выполнения команды: 'eFileAccessErr'.

Файл ncadiso.lin лежит в "%programdata%\nanocad x64 <..>\shx". Что я делаю не так?

Edited by kpblc
Link to comment
Share on other sites

Posted (edited)

Добавлю: попытка загрузки типа линии через lisp типа:

(vl-load-com)
(setq adoc (vla-get-activedocument (vlax-get-acad-object)))
(vla-load (vla-get-linetypes adoc) "jis_09_08" "ncadiso.lin")

Также приводит к ошибке

ошибка: Сервер ActiveX (TeighaX) вернул ошибку: File access error

---

При этом "ручная" загрузка срабатывает корректно.

Попытка вызова команды _.-linetype <Enter> _load <Enter> сработала бы, если б не вываливалось окно с запросом файла с описанием.

Edited by kpblc
Link to comment
Share on other sites

26 минут назад, kpblc сказал:
string LineTypeFileName = "ncadiso.lin")

Попробуй полный путь

  • Like 2
Link to comment
Share on other sites

Posted (edited)

Хм, прикольно, сработало (по крайней мере в лиспе).

Но какого ляда надо указывать полный путь-то? Если файл найден в путях поддержки - с какого перепугу надо указывать полный путь?!

Edited by kpblc
Link to comment
Share on other sites

Только что, kpblc сказал:

Если файл найден в путях поддержки - с какого перепугу

С такого, что в net пути поддержки не работают, или работают своеобразно(((

добавлено через 0 минут

Они для лиспа пути только вот вот допилили

Link to comment
Share on other sites

Ага, ага, конечно. То-то в ACAD 2019-2021 все работало нормально (специально проверил несколько раз!)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Tell a friend

    Love Официальный форум компании Нанософт Разработка? Tell a friend!
×
×
  • Create New...