Metoda ServerDocument.AddCustomization — (String, String, Guid, Uri)
Dołącza dostosowań do określonego dokumentu przy użyciu określonego dokumentu, nazwa zestawu, identyfikator rozwiązania i rozmieszczenia oczywiste.
Przestrzeń nazw: Microsoft.VisualStudio.Tools.Applications
Zestaw: Microsoft.VisualStudio.Tools.Applications.ServerDocument (w Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll)
Składnia
'Deklaracja
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
Pełna ścieżka dokumentu, do którego chcesz dołączyć dostosowań.
- assemblyName
Typ: System.String
Pełna ścieżka zestawu dla dostosowania.Ścieżka musi być na lokalnym systemie plików lub w udziale UNC; Nie można określić w lokalizacji HTTP.
- solutionId
Typ: System.Guid
Identyfikator GUID, Visual Studio 2010 Tools for Office Runtime do identyfikowania rozwiązania.
- deploymentManifestUrl
Typ: System.Uri
Adres URL manifestu wdrażania rozwiązania.
Wyjątki
Wyjątek | Warunek |
---|---|
ArgumentNullException | documentPathor assemblyName is nullodwołanie o wartości null (Nothing w języku Visual Basic) or empty. |
FileNotFoundException | documentPathlub assemblyName odnosi się do pliku, który nie istnieje. |
DocumentAlreadyCustomizedException | Dokument określony przez documentPath ma już dostosowań. |
DocumentNotCustomizedException | Dokument określony przez documentPath jest uszkodzony lub ma ograniczone uprawnienia. |
UnknownCustomizationFileException | Dokument określony przez documentPath ma rozszerzenie nazwy pliku, który nie jest obsługiwany przez Visual Studio 2010 Tools for Office Runtime. |
Uwagi
AddCustomization Metoda kojarzy dostosowania określonego w dokumencie przez dodanie _AssemblyName i _AssemblyLocation niestandardowe właściwości dokumentu do dokumentu.Właściwości te identyfikują, że dokument ma dostosowań i określ lokalizację manifestu wdrażania.Po tym wywoływana jest metoda pomyślnie, przy następnym otwarciu określonego dokumentu, środowisko wykonawcze będzie próbował zainstalować rozwiązanie Office.Aby uzyskać więcej informacji na temat właściwości dokumentu niestandardowego, zobacz Omówienie właściwości dokumentu niestandardowego.
Identyfikator GUID, który jest przekazywany do solutionID parametr jest określony w manifeście aplikacji rozwiązanie, które jest podłączane do dokumentu.Trzeba przekazać ten sam identyfikator GUID, który określono w solutionId atrybut vstov4:document element w manifeście aplikacji.Aby uzyskać więcej informacji, zobacz Aplikacja i manifestów wdrażania rozwiązań pakietu Office i <document> Element (rozwój pakietu Office w programie Visual Studio).
Dołączając dostosowywania z lokalizacji publikowania, upewnij się, że określić poprawną nazwę pliku do montażu w assemblyName parametru.Podczas publikowania rozwiązanie Office zestaw, który jest kopiowany do folderu publikowania ma rozszerzenie nazwy pliku .deploy.Na przykład jeśli nazwa zestawu jest WordDocument1.dll, nazwa pliku zestawu w folderze publikowania jest WordDocument1.dll.deploy.Aby uzyskać więcej informacji, zobacz Wdrażanie rozwiązania do pakietu Office przy użyciu technologii ClickOnce.
Jeśli określony dokument nie zawiera formant, który dostosowanie oczekuje, że dokument musi mieć, AddCustomization metoda kończy się pomyślnie, ale Zgromadzenie nie będzie można załadować, gdy użytkownik otworzy dokument.
fileType Parametr należy określić dokument, który ma rozszerzenie nazwy pliku, który jest obsługiwany w przypadku dostosowań poziomie dokumentu dla programu Microsoft Office Word i Microsoft Office Excel.Nie można dołączyć dostosowań do dokumentu, który jest zapisany w dokumencie XML programu Word (* xml) lub dokument XML programu Word 2003 (* xml) formatów plików.Aby uzyskać więcej informacji na temat obsługiwanych typów, zobacz Architektura dostosowań na poziomie dokumentu.
Przykłady
Następujący kod w przykładzie wykorzystano AddCustomization metodę, aby dołączyć dostosowań do określonego dokumentu.
W tym przykładzie wymaga:
Projekt aplikacji konsoli lub innego projektu nienależących do pakietu Office.
Odwołania do następujących zestawów:
Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll i Microsoft.VisualStudio.Tools.Applications.Runtime.dll (jeśli cele projektu .NET Framework 4 lub .NET Framework 4.5).
lub
Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.dll i Microsoft.VisualStudio.Tools.Applications.Runtime.v9.0.dll (Jeśli projekt jest przeznaczony dla.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);
}
}
Zabezpieczenia programu .NET Framework
- Pełne zaufanie do bezpośredniego wywołującego. Tego elementu członkowskiego nie można używać w kodzie częściowo zaufanym. Aby uzyskać więcej informacji, zobacz Przy użyciu bibliotek z częściowo zaufanego kodu..
Zobacz też
Informacje
Przestrzeń nazw Microsoft.VisualStudio.Tools.Applications
Inne zasoby
Aplikacja i manifestów wdrażania rozwiązań pakietu Office
Wdrażanie rozwiązania do pakietu Office przy użyciu technologii ClickOnce