|
![]() |
#1 |
Участник
|
![]()
Если у кого-то возникнет похожая проблема, то решение найдено (не прошло и года
![]() 1. При передаче значений, отличных от целочисленных, в методы объектов Word желательно оборачивать их в класс COMVariant(). Т.е. передавать в качестве параметра не строку, а объект. Следует обратить внимание на методы создания нового документа на базе шаблона и работу с полями Word. Например, создание документа на базе шаблона: X++: COM comDocuments; COMVariant varTemlateName; ; (...) if (_template) { varTemlateName = new COMVariant(COMVariantInOut::IN, COMVariantType::VT_BSTR); varTemlateName.bStr(_template); m_comDocument = comDocuments.Add(varTemlateName); } else { m_comDocument = comDocuments.Add(); } (...) 2. Следует избегать сложных "вложенных" функций с включением обращений к свойствам Com объектов. Например, высока вероятность ошибки при использовании такого синтаксиса X++: if (str2num(m_comApplication.version()) >= 9) X++: numVersion = str2num(m_comApplication.version());
if (numVersion >= 9) Короче, на терминалке "халява" - не проходит. Необходимо более строго следить за синтаксисом. |
|
|
За это сообщение автора поблагодарили: russ (1), kashperuk (5), Logger (5), alex55 (1), plumbum (1). |
Теги |
документация, com-объект |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|