Sdílet prostřednictvím


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

Zadaný dokument pomocí zadaného dokumentu, název sestavení, ID řešení a nasazení manifest přikládá vlastní úpravy.

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 vlastní úpravy.
  • assemblyName
    Typ: System.String
    Úplná cesta shromáždění úprav.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 neexistující soubor.

DocumentAlreadyCustomizedException

Dokument určený documentPath již má vlastní nastavení.

DocumentNotCustomizedException

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

UnknownCustomizationFileException

Dokument určený documentPath má příponu, která není podporována 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í úpravy a určete umístění manifestu nasazení. Po této úspěšně volána metoda, při příštím otevření dokumentu určeného runtime pokusí nainstalovat řešení sady Office. Další informace o vlastních vlastností naleznete v Custom Document Properties Overview.

Identifikátor GUID, který předáte solutionID parametr zadán v manifestu aplikace roztoku připojujete k dokumentu. Musí projít stejný identifikátor GUID, který je uveden v solutionId atributu vstov4:document prvku manifestu aplikace. Další informace naleznete v tématu Application and Deployment Manifests in Office Solutions a <document> Element (Office Development).

Pokud připojujete přizpůsobení z umístění pro publikování, přesvědčte se, zda můžete určit správný název souboru pro shromáždění assemblyName parametr. Při publikování řešení sady Office, je zkopírován do složky publikování sestavení má příponu .deploy. Například pokud WordDocument1.dll je název sestavení, název sestavení publikovat složky je WordDocument1.dll.deploy. Další informace naleznete v tématu Publishing Office Solutions.

Pokud zadaný dokument neobsahuje ovládací prvek, který očekává úprav dokumentu, aby AddCustomization Metoda proběhne úspěšně, 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 vlastní úpravy na úrovni dokumentu Microsoft Office Word a Microsoft Office Excel. Vlastní úpravy 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 typech souborů podporovaných Architecture of Document-Level Customizations.

Příklady

Následující kód například použití AddCustomization Metoda připojit vlastní nastavení zadaného dokumentu.

Tento příklad vyžaduje:

  • Projekt aplikace konzoly nebo některé jiné-Office project.

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

    • Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll a Microsoft.VisualStudio.Tools.Applications.Runtime.dll (pokud cíle projektu .NET Framework 4).

      nebo

    • Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.dll a Microsoft.VisualStudio.Tools.Applications.Runtime.v9.0.dll (pokud cíle projektu.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é

Odkaz

ServerDocument Třída

AddCustomization – přetížení

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

Další zdroje

Application and Deployment Manifests in Office Solutions

Publishing Office Solutions