ServerDocument.GetCustomizationVersion 方法

返回用于创建与指定文档相关联的自定义项的 Visual Studio Tools for Office Runtime 的版本。

命名空间:  Microsoft.VisualStudio.Tools.Applications
程序集:  Microsoft.VisualStudio.Tools.Applications.ServerDocument(在 Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll 中)

语法

声明
Public Shared Function GetCustomizationVersion ( _
    documentPath As String _
) As Integer
public static int GetCustomizationVersion(
    string documentPath
)

参数

  • documentPath
    类型:System.String
    要检查的文档的完整路径。

返回值

类型:System.Int32
一个编号,指定用于创建关联的自定义项的 Visual Studio Tools for Office Runtime 版本。

异常

异常 条件
ArgumentNullException

documentPath 参数为 nullnull 引用(在 Visual Basic 中为 Nothing) 或为空,或者完全由空白字符组成。

FileNotFoundException

documentPath 指定的文件不存在。

UnknownCustomizationFileException

Visual Studio Tools for Office Runtime 不支持 documentPath 指定的文件的文件扩展名。

备注

在 Visual Studio 的不同版本中创建的 Office 解决方案使用 Visual Studio Tools for Office Runtime 的不同版本。 每种版本的运行时提供不同版本的 ServerDocument 类,设计用于该版本运行时的解决方案。 此版本的 ServerDocument 类可以用于使用 Visual Studio 2010 创建的解决方案,以及使用 Visual Studio 2008 创建的 2007 Microsoft Office 解决方案。

下表说明此方法的返回值的含义。

返回值

说明

0

该文档不具有自定义项。

1

该文档具有使用 Visual Studio Tools for Office 版本 2003 创建的自定义项。

2

该文档具有使用 Visual Studio 2005 Tools for Office Second Edition 运行时创建的自定义项。 这是在 Visual Studio 2005 Tools for Office 和 Visual Studio 2008 中 Microsoft Office 2003 自定义设置使用的运行时版本。

3

文件包含通过 Visual Studio 2010 Tools for Office Runtime 或 Visual Studio 工具为 Microsoft Office 系统(版本 3.0 运行时)创建的自定义项。运行时版本 3.0 用于 Visual Studio 2008 的 2007 Microsoft Office 系统的自定义。

有关 Visual Studio Tools for Office Runtime 不同版本的更多信息,请参见Visual Studio Tools for Office Runtime 概述

示例

下面的代码示例创建一个新的 ServerDocument,它加载指定的文档,然后显示附加到文档的自定义项的部署清单的 URL。 在创建对象之前,此代码使用 GetCustomizationVersion 方法验证该自定义项是否使用 Visual Studio 2010 Tools for Office Runtime 创建。

此示例需要:

  • 控制台应用程序项目或某些其他非 Office 项目。

  • 对下列程序集的引用:

    • Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll 和 Microsoft.VisualStudio.Tools.Applications.Runtime.dll(如果项目以 .NET Framework 4 为目标)。

    • Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.dll 和 Microsoft.VisualStudio.Tools.Applications.Runtime.v9.0.dll(如果该项目面向 .NET Framework 3.5)。

  • 位于代码文件顶部的用于 Microsoft.VisualStudio.Tools.ApplicationsMicrosoft.VisualStudio.Tools.Applications.Runtime 命名空间的Imports(对于 Visual Basic)或 using(对于 C#)语句。

Private Sub CreateServerDocumentFromPath(ByVal documentPath As String)
    Dim runtimeVersion As Integer = 0
    Dim serverDocument1 As ServerDocument = Nothing

    Try
        runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath)
        If runtimeVersion = 3 Then
            serverDocument1 = New ServerDocument(documentPath)
            MessageBox.Show("The URL of the deployment manifest is: " & vbLf & _
                serverDocument1.DeploymentManifestUrl.ToString())
        End If

    Catch ex As System.IO.FileNotFoundException
        System.Windows.Forms.MessageBox.Show("The specified document does not exist.")
    Catch ex As UnknownCustomizationFileException
        System.Windows.Forms.MessageBox.Show("The specified document has a file " & _
            "extension that is not supported by Visual Studio Tools for Office.")
    Finally
        If Not (serverDocument1 Is Nothing) Then
            serverDocument1.Close()
        End If
    End Try
End Sub
private void CreateServerDocumentFromPath(string documentPath)
{
    int runtimeVersion = 0;
    ServerDocument serverDocument1 = null;

    try
    {
        runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath);
        if (runtimeVersion == 3)
        {
            serverDocument1 = new ServerDocument(documentPath);
            MessageBox.Show("The URL of the deployment manifest is: \n" +
                serverDocument1.DeploymentManifestUrl.ToString());
        }
    }
    catch (System.IO.FileNotFoundException)
    {
        System.Windows.Forms.MessageBox.Show("The specified document does not exist.");
    }
    catch (UnknownCustomizationFileException)
    {
        System.Windows.Forms.MessageBox.Show("The specified document has a file " +
            "extension that is not supported by Visual Studio Tools for Office.");
    }
    finally
    {
        if (serverDocument1 != null)
            serverDocument1.Close();
    }
}

.NET Framework 安全性

请参见

参考

ServerDocument 类

Microsoft.VisualStudio.Tools.Applications 命名空间

其他资源

使用 ServerDocument 类管理服务器上的文档