Partilhar via


Como: Gravar código que usa duAmbos versões da clAmbosse ServerDocument

Se aplica a

As informações contidas neste tópico se aplicam apenas às especificado Ferramentas do Visual Studio para o Office projetos e as versões do Microsoft Office.

Tipo de Projeto

  • Projetos de nível de documento

Versão do Microsoft Office

  • Microsoft Office Sistema de 2007

  • Microsoft Office 2003

For more information, see Recursos disponíveis pelo aplicativo e o tipo de projeto.

Você pode criar um arquivo de código que usa a classe ServerDocument para gerenciar as personalizações para o Microsoft Office 2003 e o Microsoft Office Sistema de 2007.Isso ajuda a criar um assembly que contém códigos reutilizáveis, quando você precisa gerenciar personalizações para Múltiplo versões do Microsoft Office.

Para obter informações sobre as diferenças entre as duas versões da classe ServerDocument , consulte Gerenciando documentos em um servidor usando a classe do ServerDocument.

Gravar código que usa Ambos duAmbos versões da clAmbosse ServerDocument

  1. Adicione referências para os seguintes conjuntos de módulos (assemblies) :

    • Microsoft.VisualStudio.Tools.Applications.ServerDocument.v9.0.dll

    • Microsoft.VisualStudio.Tools.Applications.Tempo de execução.dll

  2. Adicionar Os seguintes using (para Visual C#) ou as instruções Imports (para o Visual Basic) à parte superior da seu arquivo de código.Essas instruções Definirm aliases para os espaços para nome de cada uma das versões da classe ServerDocument.

    Imports v3Runtime = Microsoft.VisualStudio.Tools.Applications
    Imports SERuntime = Microsoft.VisualStudio.Tools.Applications.Runtime
    
    using v3Runtime = Microsoft.VisualStudio.Tools.Applications;
    using SERuntime = Microsoft.VisualStudio.Tools.Applications.Runtime;
    
  3. Use o método GetCustomizationVersion para determinar qual versão do Tempo de execução Ferramentas do Visual Studio para o Office foi usado para criar a personalização.Em seguida, use a classe ServerDocument nessa versão do Tempo de execução para trabalhar com a personalização.

    O exemplo de código a seguir examina a personalização que está associada com um documento especificado.Se o documento foi personalizado usando o Microsoft Visual Studio Tools para o Microsoft Office system (versão 3.0 Runtime) (isto é, por usando um projeto para o Word 2007), o exemplo exibe a URL do manifesto da implantação.Se o documento foi personalizado usando o O Visual Studio 2005 Tools for Office Second Edition runtime (isto é, por usando um projeto para o Word 2003), o exemplo exibe o conteúdo do manifesto do aplicativo incorporado.

    Private Sub DisplayCustomizationInformation(ByVal documentPath As String)
        Dim runtimeVersion As Integer = 0
        Dim serverDocumentv3 As v3Runtime.ServerDocument = Nothing
        Dim serverDocumentSE As SERuntime.ServerDocument = Nothing
    
        Try
            runtimeVersion = v3Runtime.ServerDocument.GetCustomizationVersion(documentPath)
    
            ' Access a member that is specific to each version of the runtime.
            If runtimeVersion = 3 Then
                serverDocumentv3 = New v3Runtime.ServerDocument(documentPath)
                MessageBox.Show("The URL of the deployment manifest is: " & vbLf & _
                    serverDocumentv3.DeploymentManifestUrl.ToString())
            ElseIf runtimeVersion = 2 Then
                serverDocumentSE = New SERuntime.ServerDocument(documentPath)
                MessageBox.Show("The embedded application manifest has the following contents: " & vbLf _
                    & serverDocumentSE.AppManifest.ToXml())
            End If
    
        Catch ex As System.IO.FileNotFoundException
            System.Windows.Forms.MessageBox.Show("The specified document does not exist.")
        Finally
            If Not (serverDocumentv3 Is Nothing) Then
                serverDocumentv3.Close()
            End If
            If Not (serverDocumentSE Is Nothing) Then
                serverDocumentSE.Close()
            End If
        End Try
    End Sub
    
    private void DisplayCustomizationInformation(string documentPath)
    {
        int runtimeVersion = 0;
        v3Runtime.ServerDocument serverDocumentv3 = null;
        SERuntime.ServerDocument serverDocumentSE = null;
    
        try
        {
            runtimeVersion = v3Runtime.ServerDocument.GetCustomizationVersion(documentPath);
    
            // Access a member that is specific to each version of the runtime.
            if (runtimeVersion == 3)
            {
                serverDocumentv3 = new v3Runtime.ServerDocument(documentPath);
                MessageBox.Show("The URL of the deployment manifest is: \n" +
                    serverDocumentv3.DeploymentManifestUrl.ToString());
            }
            else if (runtimeVersion == 2)
            {
                serverDocumentSE = new SERuntime.ServerDocument(documentPath);
                MessageBox.Show("The embedded application manifest has the following contents: \n" +
                    serverDocumentSE.AppManifest.ToXml());
            }
        }
        catch (System.IO.FileNotFoundException)
        {
            System.Windows.Forms.MessageBox.Show("The specified document does not exist.");
        }
        finally
        {
            if (serverDocumentv3 != null)
                serverDocumentv3.Close();
            if (serverDocumentSE != null)
                serverDocumentSE.Close();
        }
    }
    

Consulte também

Conceitos

Gerenciando documentos em um servidor usando a classe do ServerDocument

Referência

Microsoft.VisualStudio.Tools.Applications.ServerDocument

Microsoft.VisualStudio.Tools.Applications.Runtime.ServerDocument