Тема: Вопрос по работе с TDMS из MSWord
Вопрос больше относится к VBA4Word.
Задача следующая: нужен расширеный редактор шаблонов документов, наподобие "штатного" из 2-й версии TDMS.
Надо:
1. Обеспечить возможность просмотра/редактирования нескольких документов (соотв, каждый документ должен работать со "своим" объектом TDMS), причем необходимо выбирать объект TDMS из меню документа (а не так, как это сделано в "штатном" шаблоне TDMS2Word - по GUIDу объекта, из которого открыт данный документ)
2. Избавиться от проблемы "штатного" шаблона TDMS - невозможность автозагрузки шаблона TDMS, при наличии открытого Outlook, который для своей работы подгружает Word, но при этом не загружает шаблоны, лежащие в папке Startup.
Собственно, выход я вижу один - не запихивать шаблон в папку Startup, а размещить его, например, в папке с установленным TDMS, а для запоминания информации о выбранном объекте TDMS для данного документа использовать ActiveDocument.Variables("TDMSObjGUID").
Но при этом возникают следующие проблемы:
1. При изменении документа Word настоятельно рекомендует записать изменения и в шаблон. Что это он хочет туда записать - непонятно. Вроде ничего с ActiveDocument.AttachedTemplate не делаю...
2. Очень странно ведут себя события OnWindowActivate и OnWindowDeactivate. Почему-то иногда после вызова ActiveDocument.Fields.Update возникает событие OnWindowDeactivate, что приводит к удалению меню TDMS.
Если шаблон лежит в папке Startup - этой бредятины не происходит.
Собственно, меня бы устроило расположение шаблона в папке Startup, если бы не необходимость каждый раз выгружать Outlook для открытия документа на основе шаблона WordTDMS.
Мож есть какой способ "попросить" Outlook загружать шаблоны Word из папки startup или просто создавать свой "личный" Word-сервер, который не будет использоваться другими документами Word, открытыми "вживую" пользователем (правда, подозреваю, что архитектура Word последнее просто не позволяет)?
Заранее благодарю за хорошие идеи :)