Практическое руководство. Удаление расширений управляемого кода из документов (система 2007)
Обновлен: Ноябрь 2007
Применимость |
---|
Сведения в данном разделе относятся только к указанным проектам Visual Studio Tools for Office и версиям приложений Microsoft Office. Тип проекта
Версия Microsoft Office
Дополнительные сведения см. в разделе Доступность функций по типам приложений и проектов. |
Можно программно удалить сборку настройки Visual Studio Tools for Office из документа или книги, являющихся частью настройки на уровне документа для системы 2007 Microsoft Office. Затем пользователи могут открыть документ и просматривать содержимое, но настраиваемый интерфейс пользователя не появится, и код не будет исполняться.
Можно удалить сборку настройки, используя один из методов RemoveCustomization, предоставленных Visual Studio Tools for Office во время выполнения. Используемый метод зависит от того, что нужно удалить настройку во время выполнения (т.е., исполняемый код в решении Visual Studio Tools for Office) или настройку из закрытого документа или документа, находящегося на сервере, не имеющем установленного Microsoft Office.
Удаление сборки настройки во время выполнения
- В проекте уровня документа, вызовите метод Document.RemoveCustomization (для Word) или метод Workbook.RemoveCustomization (для Excel).
Удаление сборки настройки из закрытого документа или документа на сервере
Создайте новый проект, который не запускает Word или Excel, например приложение консоли или проект Windows Forms.
Добавьте в проект ссылку на сборку Microsoft.VisualStudio.Tools.Applications.ServerDocument.v9.0.dll.
Добавьте следующий оператор Imports или using в верхнюю часть файла кода.
Imports Microsoft.VisualStudio.Tools.Applications
using Microsoft.VisualStudio.Tools.Applications;
Вызовите статический метод RemoveCustomization класса ServerDocument и укажите путь документа решения для параметра.
В следующем примере кода предполагается, что настройка удаляется из документа с именем WordDocument1.docx, находящегося на рабочем столе.
Dim documentPath As String = System.Environment.GetFolderPath( _ Environment.SpecialFolder.Desktop) & "\WordDocument1.docx" Dim runtimeVersion As Integer = 0 Try runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath) If runtimeVersion = 3 Then ServerDocument.RemoveCustomization(documentPath) System.Windows.Forms.MessageBox.Show("The customization has been removed.") End If Catch ex As FileNotFoundException System.Windows.Forms.MessageBox.Show("The specified document does not exist.") Catch ex As IOException System.Windows.Forms.MessageBox.Show("The specified document is read-only.") Catch ex As InvalidOperationException System.Windows.Forms.MessageBox.Show("The customization could not be removed." & _ vbLf & ex.Message) End Try
string documentPath = System.Environment.GetFolderPath( Environment.SpecialFolder.Desktop) + @"\WordDocument1.docx"; int runtimeVersion = 0; try { runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath); if (runtimeVersion == 3) { ServerDocument.RemoveCustomization(documentPath); System.Windows.Forms.MessageBox.Show("The customization has been removed."); } } catch (FileNotFoundException) { System.Windows.Forms.MessageBox.Show("The specified document does not exist."); } catch (IOException) { System.Windows.Forms.MessageBox.Show("The specified document is read-only."); } catch (InvalidOperationException ex) { System.Windows.Forms.MessageBox.Show("The customization could not be removed.\n" + ex.Message); }
См. также
Задачи
Практическое руководство. Написание кода, в котором используются обе версии класса ServerDocument
Практическое руководство. Вложение расширений управляемого кода в документы (система 2007)
Практическое руководство. Удаление расширений управляемого кода из документов (система 2003)
Практическое руководство. Вложение расширений управляемого кода в документы (система 2003)
Основные понятия
Управление документами на сервере с помощью класса ServerDocument