Практическое руководство. Удаление расширений управляемого кода из документов (система 2003)
Обновлен: Ноябрь 2007
Применение |
---|
Сведения в данном разделе относятся только к указанным проектам Visual Studio Tools for Office и версиям приложений Microsoft Office. Тип проекта
Версия Microsoft Office
Дополнительные сведения см. в разделе Доступность функций по типам приложений и проектов. |
Сборку настройки Visual Studio Tools for Office из документа или рабочей книги, которые являются частью настройки уровня документа Microsoft Office 2003, можно удалить программными средствами. Пользователи могут открывать эти документы и просматривать содержимое, но любой собственный пользовательский интерфейс в документах не отображается, а код не запускается. При удалении сборки можно оставить кэшированные данные в документе, а можно их также удалить:
Если требуется сохранить кэшированные данные, необходимо очистить встроенный в документ манифест приложения. Кэшированные данные можно сохранить, если они впоследствии они считываются страницей ASP.NET или серверным приложением.
Если кэшированные данные не нудны, следует очистить манифест приложения и кэшированные данные.
В среда выполнения Visual Studio Tools for Office включена объектная модель, позволяющая выполнять эти действия программными средствами.
Очищение внедренного манифеста приложения
Для очищения только внедренного манифеста приложения используется класс ServerDocument. Необходимо вставить код, использующий класс ServerDocument в новом проекте (не в решении Visual Studio Tools for Office), например, консольном приложении или проекте Windows Forms.
Очищение внедренного манифеста приложения
Создайте новый проект, например, приложение консоли или проект Windows Forms.
Добавьте в новый проект ссылку при сборке Microsoft.VisualStudio.Tools.Applications.Runtime.dll.
Добавьте следующий оператор Imports или using в верхнюю часть файла кода.
Imports Microsoft.VisualStudio.Tools.Applications.Runtime
using Microsoft.VisualStudio.Tools.Applications.Runtime;
Создайте экземпляр класса ServerDocument и передайте его в документ решения. Вызовите метод Clear свойства AppManifest.
Dim sd As ServerDocument = Nothing Try sd = New ServerDocument("C:\Documents\SolutionDocument.doc") sd.AppManifest.Clear()
ServerDocument sd = null; try { sd = new ServerDocument(@"C:\Documents\SolutionDocument.doc"); sd.AppManifest.Clear();
Сохраните изменения и закройте документ.
sd.Save() Finally If Not sd Is Nothing Then sd.Close() End If End Try
sd.Save(); } finally { if (sd != null) { sd.Close(); } }
Очищение внедренного манифеста приложения и кэшированных данных
Из документа можно удалить и внедренный манифест приложения, и кэшированные данные с помощью одного из методов RemoveCustomization.
Для открытого документа на клиентском компьютере следует использовать метод Document.RemoveCustomization или Workbook.RemoveCustomization.
Для закрытого документа или документа на сервера следует использовать метод ServerDocument.RemoveCustomization.
Примечание. |
---|
Методы Document.RemoveCustomization и Workbook.RemoveCustomization также удаляют из документа элемент управления Runtime Storage Control. Дополнительные сведения об элементе управления Runtime Storage Control см. в разделе Общие сведения о Runtime Storage Control. |
Удаление манифеста приложения и кэшированных данных из документа, открытого на клиентском компьютере
- В проекте уровня документа для Microsoft Office Word или Microsoft Office Excel вызовите метод Document.RemoveCustomization (для Word) или Workbook.RemoveCustomization (для Excel).
Удаление манифеста приложения и кэшированных данных из закрытого документа или документа на сервере
Создайте новый проект, например, приложение консоли или проект Windows Forms.
Добавьте в новый проект ссылку при сборке Microsoft.VisualStudio.Tools.Applications.Runtime.dll.
Добавьте следующий оператор Imports или using в верхнюю часть файла кода.
Imports Microsoft.VisualStudio.Tools.Applications.Runtime
using Microsoft.VisualStudio.Tools.Applications.Runtime;
Вызовите статический метод RemoveCustomization класса ServerDocument и укажите путь документа в параметре.
If (ServerDocument.IsCustomized("C:\Documents\SolutionDocument.doc")) Then ServerDocument.RemoveCustomization("C:\Documents\SolutionDocument.doc") End If
if (ServerDocument.IsCustomized(@"C:\Documents\SolutionDocument.doc")) { ServerDocument.RemoveCustomization(@"C:\Documents\SolutionDocument.doc"); }
См. также
Задачи
Практическое руководство. Написание кода, в котором используются обе версии класса ServerDocument
Практическое руководство. Вложение расширений управляемого кода в документы (система 2003)
Практическое руководство. Удаление расширений управляемого кода из документов (система 2007)
Практическое руководство. Вложение расширений управляемого кода в документы (система 2007)
Основные понятия
Управление документами на сервере с помощью класса ServerDocument