Встраивать пользовательские данные в документы Word 2003, 2007, 2010 - PullRequest
1 голос
/ 09 мая 2011

Я работаю над плагином Word, который должен быть совместим со всеми версиями Word, начиная с 2003 года. Одним из требований, необходимых для функции, является возможность встраивания пользовательских данных любой длины в документ. Word.Document.CustomDocumentProperties работает для всех необходимых версий, но, к сожалению, ограничивает размер данных. Во время исследования я также обнаружил, что Word.Document.CustomXML может быть решением, которое мне нужно. Однако я не смог выяснить, правильно ли работает это свойство для Word 2003. Кроме того, выполнение пользовательских операций CRUD должно быть возможным для пользовательских данных, но из того, что я вижу, часть CustomXML предоставляет только методы для добавления и извлечения данных. Как мне справиться с этим требованием?

1 Ответ

0 голосов
/ 10 мая 2011

Что касается CustomXML, помните, что патентная проблема, с которой Microsoft столкнулась в прошлом году, привела к удалению этой функции в Office 2007 (по крайней мере, в США). Подробнее см. в этом блоге . Я помню, что удаление было ограничено изданием в США, и что для Office 2010 MS использует другой подход. Но это означает, что вы зависите от состояния исправления установки Office вашего клиента.

Вы можете просмотреть переменные документа Word вместо свойства документа . Они поддерживаются начиная с Word 95 и могут рассматриваться как INI-файлы, прикрепленные к документу. Я получил хороший опыт работы со структурой XML, сохраненной только в одной переменной документа (содержимое XML можно также зашифровать при необходимости).

Однако вы можете просто читать или записывать переменные документа (или удалять их). Нет никакого способа обеспечить операции CRUD через объектную модель Word сама по себе; это ваше приложение, которое несет ответственность.

Пожалуйста, имейте в виду, что (если ваши документы отправляются и возвращаются через вложения электронной почты), что некоторые из ваших клиентов могут использовать какой-либо инструмент для удаления метаданных; Я видел использование этого на легальном рынке много. Эти инструменты могут удалять переменные документа и свойства документа Office. С документами Office (Word, Excel) невозможно на 100% обеспечить безопасность ваших данных в документе.

...