Поделиться через


Практическое руководство. Удаление расширений управляемого кода из документов (система 2007)

Обновлен: Ноябрь 2007

Применимость

Сведения в данном разделе относятся только к указанным проектам Visual Studio Tools for Office и версиям приложений Microsoft Office.

Тип проекта

  • Проекты уровня документа

Версия Microsoft Office

  • Выпуск 2007 системы Microsoft Office

Дополнительные сведения см. в разделе Доступность функций по типам приложений и проектов.

Можно программно удалить сборку настройки Visual Studio Tools for Office из документа или книги, являющихся частью настройки на уровне документа для системы 2007 Microsoft Office. Затем пользователи могут открыть документ и просматривать содержимое, но настраиваемый интерфейс пользователя не появится, и код не будет исполняться.

Можно удалить сборку настройки, используя один из методов RemoveCustomization, предоставленных Visual Studio Tools for Office во время выполнения. Используемый метод зависит от того, что нужно удалить настройку во время выполнения (т.е., исполняемый код в решении Visual Studio Tools for Office) или настройку из закрытого документа или документа, находящегося на сервере, не имеющем установленного Microsoft Office.

Удаление сборки настройки во время выполнения

Удаление сборки настройки из закрытого документа или документа на сервере

  1. Создайте новый проект, который не запускает Word или Excel, например приложение консоли или проект Windows Forms.

  2. Добавьте в проект ссылку на сборку Microsoft.VisualStudio.Tools.Applications.ServerDocument.v9.0.dll.

  3. Добавьте следующий оператор Imports или using в верхнюю часть файла кода.

    Imports Microsoft.VisualStudio.Tools.Applications
    
    using Microsoft.VisualStudio.Tools.Applications;
    
  4. Вызовите статический метод 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