Sdílet prostřednictvím


ServerDocument.AddCustomization – metoda (String, String, Guid, Uri)

O přizpůsobení se připojí k zadaný dokument pomocí zadaného dokumentu, název sestavení, ID řešení a manifestu nasazení.

Obor názvů:  Microsoft.VisualStudio.Tools.Applications
Sestavení:  Microsoft.VisualStudio.Tools.Applications.ServerDocument (v Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll)

Syntaxe

'Deklarace
Public Shared Sub AddCustomization ( _
    documentPath As String, _
    assemblyName As String, _
    solutionId As Guid, _
    deploymentManifestUrl As Uri _
)
public static void AddCustomization(
    string documentPath,
    string assemblyName,
    Guid solutionId,
    Uri deploymentManifestUrl
)

Parametry

  • documentPath
    Typ: System.String
    Úplná cesta dokumentu, ke kterému se chcete připojit přizpůsobení.
  • assemblyName
    Typ: System.String
    Úplná cesta k sestavení vlastního nastavení.Cesta musí být v místním systému souborů nebo do sdílené složky UNC; Nelze určit umístění HTTP.
  • solutionId
    Typ: System.Guid
    Identifikátor GUID, Visual Studio Tools for Office runtime používá k identifikaci řešení.
  • deploymentManifestUrl
    Typ: System.Uri
    Adresa URL manifestu nasazení řešení.

Výjimky

Výjimka Podmínka
ArgumentNullException

documentPathor assemblyName is nullodkaz null (Nothing v jazyce Visual Basic) or empty.

FileNotFoundException

documentPathnebo assemblyName odkazuje na soubor, který neexistuje.

DocumentAlreadyCustomizedException

Dokument určený documentPath již o přizpůsobení.

DocumentNotCustomizedException

Dokument určený documentPath je poškozen nebo má omezená oprávnění.

UnknownCustomizationFileException

Dokument určený documentPath má příponu názvu souboru, který není podporován Visual Studio Tools for Office runtime.

Poznámky

AddCustomization Metoda přidruží zadanou přizpůsobení dokumentu přidáním _AssemblyName a _AssemblyLocation uživatelské vlastnosti dokumentu do dokumentu.Tyto vlastnosti určit, že dokument má vlastního nastavení a určete umístění manifestu nasazení.Po tato metoda úspěšně volání při příštím uživatel otevře zadaný dokument, modul runtime pokusí nainstalovat Office řešení.Další informace o vlastnostech dokumentu vlastní, viz Přehled přizpůsobených vlastností dokumentu.

Identifikátor GUID, který předáte solutionID parametr je zadán v manifestu aplikace roztoku připojujete k dokumentu.Musí předat stejný identifikátor GUID, který je uveden v solutionId atribut vstov4:document prvek v manifestu aplikace.Další informace naleznete v tématu Manifesty aplikací a nasazení v řešeních pro systém Office a <document> – element (vývoj pro Office v sadě Visual Studio).

Pokud připojujete přizpůsobení z umístění pro publikování, ujistěte se, že zadáte správný název souboru sestavení v assemblyName parametr.Při publikování Office řešení, sestavení, který je zkopírován do složky publikování má příponu názvu souboru .deploy.Například pokud WordDocument1.dll je název sestavení, název souboru sestavení ve složce publikování je WordDocument1.dll.deploy.Další informace naleznete v tématu Nasazení řešení Office s použitím technologie ClickOnce.

Pokud zadaný dokument neobsahuje ovládací prvek, který očekává úprav dokumentu, aby AddCustomization bude úspěšná metoda, ale sestavení se nezdaří načtení, když uživatel otevře dokument.

fileType Parametru musíte určit dokument, který má příponu názvu souboru, který je podporován pro přizpůsobení úrovni dokumentu aplikace Microsoft Office Word a Microsoft Office Excel.O přizpůsobení nelze připojit k dokumentu, který je uložen v dokumentu XML aplikace Word (* xml) nebo dokument XML aplikace Word 2003 (* xml) formáty souborů.Další informace o podporovaných typů souborů naleznete v tématu Architektura přizpůsobení na úrovni dokumentu.

Příklady

Následující příklad kódu používá AddCustomization metoda připojení vlastního nastavení zadaného dokumentu.

Tento příklad vyžaduje:

  • Projekt aplikace konzoly nebo jiného projektu mimo sadu Office.

  • Odkazy na následující sestavení:

    • Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll a Microsoft.VisualStudio.Tools.Applications.Runtime.dll (Pokud projekt cílen .NET Framework 4 nebo .NET Framework 4.5).

      nebo

    • Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.dll a Microsoft.VisualStudio.Tools.Applications.Runtime.v9.0.dll (Pokud je projekt cílen na rozhraní.NET Framework 3.5).

Private Sub AddCustomizationUsingAssemblyPath(ByVal documentPath As String, _
    ByVal assemblyName As String, ByVal solutionID As Guid, ByVal deployManifestPath As String)
    Dim runtimeVersion As Integer = 0

    Try
        ' Make sure that this document does not yet have any Visual Studio Tools 
        ' for Office customizations.
        runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath)
        If runtimeVersion = 0 Then
            Dim deploymentManifestUri As New Uri(deployManifestPath)
            ServerDocument.AddCustomization(documentPath, assemblyName, solutionID, deploymentManifestUri)
            MessageBox.Show("The document was successfully customized.")
        Else
            System.Windows.Forms.MessageBox.Show("The document is already customized.")
        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.")
    Catch ex As DocumentNotCustomizedException
        System.Windows.Forms.MessageBox.Show("The document could not be customized." & _
        vbLf & ex.Message)
    End Try
End Sub
private void AddCustomizationUsingAssemblyPath(string documentPath, string assemblyName, 
    Guid solutionID, string deployManifestPath)
{
    int runtimeVersion = 0;

    try
    {
        runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath);

        // Make sure that this document does not yet have any Visual Studio Tools 
        // for Office customizations.
        if (runtimeVersion == 0)
        {
            Uri deploymentManifestUri = new Uri(deployManifestPath);
            ServerDocument.AddCustomization(documentPath, assemblyName, solutionID, deploymentManifestUri);
            MessageBox.Show("The document was successfully customized.");
        }
        else
        {
            System.Windows.Forms.MessageBox.Show("The document is already customized.");
        }
    }
    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.");
    }
    catch (DocumentNotCustomizedException ex)
    {
        System.Windows.Forms.MessageBox.Show("The document could not be customized.\n" +
            ex.Message);
    }
}

Zabezpečení rozhraní .NET Framework

Viz také

Referenční dokumentace

ServerDocument Třída

AddCustomization – přetížení

Microsoft.VisualStudio.Tools.Applications – obor názvů

Další zdroje

Manifesty aplikací a nasazení v řešeních pro systém Office

Nasazení řešení Office s použitím technologie ClickOnce