SuperMiQi Ответов: 0

Проблема с сохранением activex в office 365


Всем Привет,

У меня есть проблема с использованием ActiveX в Word 365.
Я могу скопировать/вставить элемент управления ActiveX в Word 365, но когда я применяю действия сохранения / загрузки, он работает не так, как ожидалось.
Основываясь на анимационном видео, показывающем эффект, вы увидите, что сохранение документа работает должным образом, и вызовите метод IPersistStorage::Save, но когда я решаю применить файл open document, он непосредственно выполняет IPersistStorage::Save, а не IPersistStorage::Load для извлечения сохраненных настроек. В настоящее время эффект представляет собой элемент управления activeX, прикрепленный к документу с его настройками по умолчанию.

Этот эффект можно продемонстрировать здесь:
Влияние на открытый документ документ

Код, связанный с интерфейсом IPersistStorage, виден здесь:
Persist.cpp

Код, связанный с основным телом элемента управления activeX, может быть виден здесь:
MFCActiveXControl1Ctrl.cpp

Весь проект, который нужно повторить с вашей стороны, можно скачать здесь:
Весь проект

Я хотел бы знать, если кто-то уже обнаружил ту же проблему и почему IPersistStorage ведет себя по-другому и какова новая концепция, чтобы использовать ее для совместимости с новым пакетом Office 365 (в основном Word / PowerPoint).

Заранее Вам большое спасибо.
С уважением.
Мики

Что я уже пробовал:

Я видел, что формат docx больше не является составным файлом.
Если вы переименуете файлы DOCX от молнии, он будет содержать дерево папок с блоком управления.
Это странно, что IPersistStorage все еще называется, но ведет себя не так, как ожидалось.

KarstenK

Обратитесь к кодам ошибок для некоторых подсказок, чтобы угадать проблему. :-O

0 Ответов