Freigeben über


Exemplarische Vorgehensweise: Bereitstellen einer Anpassung auf Dokumentebene mithilfe eines Bereitstellungsmanifests (2003 System)

Aktualisiert: November 2007

Betrifft

Die Informationen in diesem Thema gelten nur für die angegebenen Visual Studio Tools for Office-Projekte und Versionen von Microsoft Office.

Projekttyp

  • Projekte auf Dokumentebene

Microsoft Office-Version

  • Microsoft Office 2003

Weitere Informationen hierzu finden Sie unter Verfügbare Features nach Anwendung und Projekttyp.

Diese exemplarische Vorgehensweise veranschaulicht das Bereitstellen einer Anpassung auf Dokumentebene für Microsoft Office Excel oder Microsoft Office Word in einer Netzwerkfreigabe auf einem Server. Nach Abschluss der exemplarischen Vorgehensweise können Sie die Projektmappe vom Entwicklungscomputer aus auf dem Server ausführen. Weitere Informationen zu Anpassungen auf Dokumentebene finden Sie unter Architektur von Anpassungen auf Dokumentebene.

In einer Produktionsumgebung wird eine Visual Studio Tools for Office-Projektmappe häufig zunächst auf einem Testserver veröffentlicht. Nach der Genehmigung durch die IT-Abteilung erfolgt dann die Bereitstellung auf einem Produktionsserver. In dieser exemplarischen Vorgehensweise veröffentlichen Sie eine Projektmappe in einem temporären Speicherort auf dem Entwicklungscomputer und stellen diese dann in dem temporären Verzeichnis erneut auf einem Server bereit. Weitere Informationen über die Optionen zum Bereitstellen einer Projektmappe finden Sie unter Bereitstellungsmodelle (2003 System).

In dieser exemplarischen Vorgehensweise werden die folgenden Aufgaben veranschaulicht:

  • Veröffentlichen einer Projektmappe auf dem Entwicklungscomputer mithilfe des Webpublishing-Assistenten.

  • Manuelles erneutes Bereitstellen der Projektmappe vom lokalen Computer in einer Netzwerkfreigabe auf einem Server.

  • Programmgesteuertes Ändern des im Dokument eingebetteten Anwendungsmanifests, sodass es auf den Speicherort des neuen Bereitstellungsmanifests zeigt.

  • Bearbeiten des Bereitstellungsmanifests, sodass es auf den neuen Speicherort des externen Anwendungsmanifests zeigt.

  • Bearbeiten des externen Anwendungsmanifests, sodass es auf den neuen Assemblyspeicherort und das Bereitstellungsmanifest zeigt.

Vorbereitungsmaßnahmen

Zum Durchführen dieser exemplarischen Vorgehensweise benötigen Sie die folgenden Komponenten:

  • Visual Studio Tools for Office (eine optionale Komponente von Visual Studio 2008 Professional und Visual Studio Team System).

  • Microsoft Office Word 2003 oder Microsoft Office Excel 2003.

    Hinweis:

    In dieser exemplarischen Vorgehensweise wird davon ausgegangen, dass Sie eine Word-Projektmappe bereitstellen. Wenn Sie die exemplarische Vorgehensweise mit einer Excel-Projektmappe durchführen möchten, müssen Sie in allen Code- und XML-Beispielen den Namen des Word-Projekts durch den Namen Ihres Excel-Projekts ersetzen.

  • Zugriff auf einen Netzwerkserver für die Bereitstellung. In dieser exemplarischen Vorgehensweise wird davon ausgegangen, dass Sie die Projektmappe auf der Netzwerkfreigabe \\DeployServer\ShareFolder bereitstellen.

  • Administratorrechte auf dem Entwicklungscomputer, damit Sie die Sicherheitsrichtlinien für einen Netzwerkspeicherort festlegen können.

Erstellen des Projekts

In diesem Schritt erstellen Sie ein Word-Dokumentprojekt.

So erstellen Sie ein neues Projekt

Visual Studio öffnet das neue Word-Dokument im Designer und fügt dem Projektmappen-Explorer das WordDeployment-Projekt hinzu.

Hinzufügen von Code im Hintergrund des Dokuments

Für das Projekt ist Code erforderlich, sodass Sie überprüfen können, ob die Projektmappe beim Öffnen des Dokuments funktioniert. Für diese exemplarische Vorgehensweise fügen Sie dem Startup-Ereignishandler des Dokuments ein Meldungsfeld hinzu.

So fügen Sie einem Initialisierungsereignis ein Meldungsfeld hinzu

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf ThisDocument.vb oder ThisDocument.cs, und klicken Sie dann im Kontextmenü auf Code anzeigen.

  2. Fügen Sie dem Startup-Ereignishandler in der ThisDocument-Klasse folgenden Code hinzu, damit während der Initialisierung ein Meldungsfeld angezeigt wird.

    Private Sub ThisDocument_Startup(ByVal sender As Object, ByVal e As System.EventArgs) _
        Handles Me.Startup
    
        MessageBox.Show("The document is deployed correctly.")
    End Sub
    
    private void ThisDocument_Startup(object sender, System.EventArgs e)
    {
        MessageBox.Show("The document is deployed correctly.");
    }
    
  3. Drücken Sie F5, um das Projekt auszuführen.

    Word wird gestartet, und das Meldungsfeld wird angezeigt.

  4. Schließen Sie das Meldungsfeld.

  5. Beenden Sie Word.

Veröffentlichen der Projektmappe

Der erste Bereitstellungsschritt dieses Prozesses besteht in der Veröffentlichung der Projektmappe an einem temporären Speicherort auf dem lokalen Computer.

So veröffentlichen Sie die Projektmappe

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Projektknoten.

  2. Klicken Sie im Kontextmenü auf Veröffentlichen.

    Der Webpublishing-Assistent wird angezeigt.

  3. Geben Sie im Feld Veröffentlichungsort für diese Anwendung angeben die Zeichenfolge C:\TestDeploy ein.

  4. Klicken Sie auf Fertig stellen.

    Das Projektmappendokument und das Bereitstellungsmanifest werden nach C:\TestDeploy kopiert. Die Projektmappenassembly, das aktualisierte Anwendungsmanifest sowie eine Kopie des Projektmappendokuments und des Bereitstellungsmanifests werden nach C:\TestDeploy\WordDeployment_1.0.0.0 kopiert. Weitere Informationen hierzu finden Sie unter Bereitstellen von Anpassungen auf Dokumentebene (2003 System).

  5. Klicken Sie im Menü Datei auf Projektmappe schließen, um die WordDeployment-Projektmappe in Visual Studio zu schließen.

    Hinweis:

    Die Assembly verfügt noch nicht über die Berechtigung für die Ausführung. Wenn Sie also versuchen, die Projektmappe auszuführen, löst diese einen Fehler aus. Aktualisieren Sie die Sicherheitsrichtlinie in einem späteren Schritt, um der Assembly Berechtigungen für die volle Vertrauenswürdigkeit zu gewähren.

Bei der Veröffentlichung einer Projektmappe zeigt das eingebettete Anwendungsmanifest im Projektmappendokument auf den vollständigen Pfad des Bereitstellungsmanifests. Wenn Sie die Projektmappendateien an einem anderen Speicherort erneut bereitstellen, müssen Sie das eingebettete Anwendungsmanifest so aktualisieren, dass es auf den neuen Speicherort des Bereitstellungsmanifests zeigt. Außerdem müssen Sie das Bereitstellungsmanifest und das externe Anwendungsmanifest so aktualisieren, dass diese auf die neuen Speicherorte zeigen.

Aktualisieren des eingebetteten Anwendungsmanifests

Um das eingebettete Anwendungsmanifest zu bearbeiten, verwenden Sie die ServerDocument-Klasse, die von Visual Studio Tools for Office bereitgestellt wird. Bei Verwendung der ServerDocument-Klasse müssen Sie den Code in einem neuen Projekt, z. B. einem Konsolenprojekt, ausführen (nicht in der Visual Studio Tools for Office-Projektmappe), und das Visual Studio Tools for Office-Projektmappendokument muss geschlossen sein.

Hinweis:

Visual Studio Tools for Office enthält ein Beispiel, das die Erstellung eines Tools zum Bearbeiten des eingebetteten Anwendungsmanifests veranschaulicht. Weitere Informationen hierzu finden Sie unter ServerDocument-Beispiel.

So aktualisieren Sie das eingebettete Anwendungsmanifest

  1. Erstellen Sie ein neues Konsolenanwendungsprojekt.

  2. Fügen Sie dem Projekt Verweise auf die Microsoft.VisualStudio.Tools.Applications.Runtime-Assembly und die System.Windows.Forms-Assembly hinzu.

  3. Öffnen Sie die Datei Program.cs oder die Datei Module1.vb, und fügen Sie am Anfang der Datei folgende Imports-Anweisung bzw. using-Anweisung hinzu.

    Imports Microsoft.VisualStudio.Tools.Applications.Runtime
    
    using Microsoft.VisualStudio.Tools.Applications.Runtime;
    
  4. Kopieren Sie folgenden Code in die Main-Funktion. In diesem Code wird ein ServerDocument erstellt, das den Zugriff auf das eingebettete Anwendungsmanifest des Projektmappendokuments ermöglicht. Im Code wird der DeployManifestPath-Eigenschaft der neue Pfad für das Bereitstellungsmanifest zugewiesen. Dann wird das ServerDocument gespeichert und geschlossen.

    Dim sd As ServerDocument = Nothing
    Try
        sd = New ServerDocument("C:\TestDeploy\WordDeployment.doc")
        sd.AppManifest.DeployManifestPath = _
            "\\DeployServer\ShareFolder\WordDeployment.application"
        sd.Save()
    
    Finally
        If Not sd Is Nothing Then
            sd.Close()
        End If
    End Try
    
    ServerDocument sd = null;
    try
    {
        sd = new ServerDocument(@"C:\TestDeploy\WordDeployment.doc");
        sd.AppManifest.DeployManifestPath = 
            @"\\DeployServer\ShareFolder\WordDeployment.application";
        sd.Save();
    }
    finally
    {
        if (sd != null)
        {
            sd.Close();
        }
    }
    
  5. Drücken Sie F5, um das Projekt auszuführen.

    Während der Aktualisierung des eingebetteten Anwendungsmanifests wird kurz ein Konsolenfenster angezeigt und wieder geschlossen.

Aktualisieren des Bereitstellungsmanifests

Nachdem Sie im Visual Studio Tools for Office-Projektmappendokument das eingebettete Anwendungsmanifest aktualisiert haben, müssen Sie das Bereitstellungsmanifest so aktualisieren, dass es auf den neuen Speicherort des externen Anwendungsmanifests verweist.

So aktualisieren Sie das Bereitstellungsmanifest

  1. Öffnen Sie das Bereitstellungsmanifest mit einem Text-Editor, z. B. Windows Editor. Das Bereitstellungsmanifest befindet sich im Veröffentlichungsordner C:\TestDeploy. Es verfügt über den Namen WordDeployment.application.

  2. Legen Sie das codebase-Attribut des <dependentAssembly>-Elements auf den vollständigen Pfad des Speicherorts fest, an dem das externe Anwendungsmanifest endgültig veröffentlicht wird. Weitere Informationen hierzu finden Sie unter <dependentAssembly>-Element (Referenz für Visual Studio Tools for Office). Das Attribut sollte für diese exemplarische Vorgehensweise wie im folgenden Beispiel lauten:

    <dependentAssembly
        codebase="\\DeployServer\ShareFolder\
        WordDeployment_1.0.0.0\WordDeployment.dll.manifest"
    
  3. Speichern und schließen Sie die Bereitstellungsmanifestdatei.

Aktualisieren des externen Anwendungsmanifests

Nach Aktualisierung des Bereitstellungsmanifests müssen Sie auch das externe Anwendungsmanifest aktualisieren, und zwar so, dass es auf den endgültigen Bereitstellungsspeicherort der Projektmappenassembly und des Bereitstellungsmanifests zeigt. Bei jeder Veröffentlichung einer Visual Studio Tools for Office-Projektmappe wird ein neues externes Anwendungsmanifest generiert, das auf die aktuelle Version der Projektmappenassembly verweist.

So aktualisieren Sie das externe Anwendungsmanifest

  1. Öffnen Sie das Anwendungsmanifest mit einem Text-Editor, z. B. Windows Editor. Das Anwendungsmanifest befindet sich im Veröffentlichungsorder C:\TestDeploy\WordDeployment_1.0.0.0. Es verfügt über den Namen WordDeployment.dll.manifest.

  2. Suchen Sie das <installFrom>-Element, das dem <dependency>-Element untergeordnet ist, und legen Sie das codebase-Attribut auf den vollständigen Pfad der aktuellen Projektmappenassembly fest. Weitere Informationen hierzu finden Sie unter <installFrom>-Element (Referenz für Visual Studio Tools for Office). Das Attribut sollte für diese exemplarische Vorgehensweise wie im folgenden Beispiel lauten:

    <dependentAssembly
        codebase="\\DeployServer\ShareFolder\
        WordDeployment_1.0.0.0\WordDeployment.dll"
    
  3. Suchen Sie das <installFrom>-Element, das dem <assembly>-Element untergeordnet ist, und legen Sie das codebase-Attribut auf den vollständigen Pfad des Bereitstellungsmanifests fest. Weitere Informationen hierzu finden Sie unter <installFrom>-Element (Referenz für Visual Studio Tools for Office). Das Attribut sollte für diese exemplarische Vorgehensweise wie im folgenden Beispiel lauten:

    <dependentAssembly
        codebase="\\DeployServer\ShareFolder\WordDeployment.application"
    
  4. Speichern und schließen Sie die Anwendungsmanifestdatei.

Kopieren der Projektmappendateien auf den Server

Nach der Bearbeitung der Manifeste können Sie die Projektmappendateien nun auf dem Server in das endgültige Bereitstellungsziel kopieren.

So kopieren Sie die Projektmappendateien auf den Server

  1. Erstellen Sie unter der Netzwerkdateifreigabe \\DeployServer\ShareFolder den Ordner WordDeployment_1.0.0.0.

  2. Kopieren Sie das Projektmappendokument und das Bereitstellungsmanifest in den Ordner \\DeployServer\ShareFolder.

  3. Kopieren Sie die Projektmappenassembly und das Anwendungsmanifest in den Ordner \\DeployServer\ShareFolder\WordDeployment_1.0.0.0.

Gewähren von voller Vertrauenswürdigkeit für den Netzwerkordner

Damit die Visual Studio Tools for Office-Projektmappe aus dem Netzwerkordner ausgeführt werden kann, müssen Sie in den Sicherheitsrichtlinien des Entwicklungscomputers dem Netzwerkordner volle Vertrauenswürdigkeit gewähren. Sie können die Sicherheitsrichtlinie über die Eingabeaufforderung ändern, indem Sie das Sicherheitsrichtlinientool für den Codezugriff (Caspol.exe) verwenden. Um einem Speicherort im Netzwerk Vertrauenswürdigkeit zu gewähren, benötigen Sie Administratorrechte. Außerdem müssen Sie die Sicherheitsrichtlinien auf Computerebene ändern.

Hinweis:

Diese Prozedur bezieht sich speziell auf diese exemplarische Vorgehensweise. Gewähren Sie Assemblys und Verzeichnissen keine volle Vertrauenswürdigkeit, wenn Sie nicht genau wissen, ob diese sicher sind. Weitere Informationen über das Gewähren und Entfernen von Berechtigungen finden Sie unter Gewusst wie: Gewähren von Berechtigungen für Ordner und Assemblys (2003 System) und unter Gewusst wie: Entfernen von Berechtigungen für Ordner und Assemblys (2003 System).

So gewähren Sie dem Netzwerkordner volle Vertrauenswürdigkeit

  • Geben Sie an der Eingabeaufforderung von Visual Studio folgenden Befehl ein:

    caspol -m -ag LocalIntranet_Zone -url \\DeployServer\ShareFolder\* FullTrust -n "Remote Deployment" -d "Deployment Walkthrough"
    

Testen der Projektmappe

Sie können die Projektmappe nun testen, um sicherzustellen, dass der Code beim Öffnen des Dokuments auf dem Entwicklungscomputer ausgeführt wird.

So testen Sie die Bereitstellung

  1. Öffnen Sie auf dem Entwicklungscomputer im Ordner \\DeployServer\ShareFolder\ die Datei WordDeployment.doc.

  2. Vergewissern Sie sich, dass das Meldungsfeld angezeigt wird.

Nächste Schritte

Sie können die Projektmappe auch mit einer Microsoft Windows Installer-Datei (MSI-Datei) bereitstellen. Weitere Informationen hierzu finden Sie unter Exemplarische Vorgehensweise: Bereitstellen einer Anpassung auf Dokumentebene mithilfe einer Windows Installer-Datei (2003 System).

Siehe auch

Aufgaben

Exemplarische Vorgehensweise: Bereitstellen einer Anpassung auf Dokumentebene mithilfe einer Windows Installer-Datei (2003 System)

Konzepte

Bereitstellen von Office-Projektmappen (2003 System)

Bereitstellen von Anpassungen auf Dokumentebene (2003 System)

Bereitstellungsmodelle (2003 System)