A managed exception was thrown by Revit or by one of its external applications.
Закрываю его черезЗачем так закрывать? Есть же специальный метод - Document.Close() (http://www.revitapidocs.com/2018.1/5948b03d-5537-33d4-6e38-a8f16d5d6779.htm)
Зачем так закрывать? Есть же специальный метод - Document.Close()Ну все дело в том, что этот метод не работает с активным документом и это всех раздражает:)
Вот прям там же в этой статье советуют так не делать =)Зачем так закрывать? Есть же специальный метод - Document.Close()Ну все дело в том, что этот метод не работает с активным документом и это всех раздражает:)
http://thebuildingcoder.typepad.com/blog/2010/10/closing-the-active-document-and-why-not-to.html
Проще создать новый пустой документ, сделать его активным, а нужный закрыть.Мне это не совсем подходит, но не суть.
Плюс - какая версия Ревита у Вас?2018.1
Вы пробовали на других версиях?Не пробовал, но собираюсь потестить на другой машине для начала.
Да и какие действия вы совершаете с документом?Только открытие и закрытие
Может проблема где-то в коде?Не думаю, потому что в целом код это только открытие документа.
var fileName = "C:/Temp/Test_2017.rvt";
// open document
var openedDoc = commandData.Application.OpenAndActivateDocument(fileName);
// some work
TaskDialog.Show("Title", "Hello");
// activate help doc
commandData.Application.OpenAndActivateDocument("C:/Temp/Проект2.rvt");
// close opened doc
openedDoc.SaveAndClose();
Что касается такого решения, оно мне не нравится тем, что в случае закрытия нескольких файлов, например 5ти, время открытия - закрытия документов увеличивается в разы, а если файлы огромные, то вообще можно чай идти питьНе понял - в каком моменте время увеличивается? При открытии у вас время во всех вариантах будет одинаковым. При закрытии - можно закрыть двумя способами. Первый я в примере использовал - метод SaveAndClose() у UiDocument'а - при этом идет сохранение, а второй я писал в первом ответе - он уже у Document'а - в него можно подать false и закрытие будет без сохранения