Freigeben über


Exemplarische Vorgehensweise: Erstellen einer benutzerdefinierten Aktion

Im Folgenden wird exemplarisch die Vorgehensweise beim Erstellen einer benutzerdefinierten DLL-Aktion beschrieben, die einen Benutzer nach Abschluss einer Installation auf eine Webseite leitet. Sie können benutzerdefinierte Aktionen verwenden, um nach Abschluss der Installation Code auszuführen.

Tipp

Ihr Computer zeigt möglicherweise für einige der Elemente der Visual Studio-Benutzeroberfläche in der folgenden Anleitung andere Namen oder Standorte an. Diese Elemente sind von der jeweiligen Visual Studio-Version und den verwendeten Einstellungen abhängig. Weitere Informationen finden Sie unter Visual Studio-Einstellungen.

So erstellen Sie die benutzerdefinierte Aktion

  1. Klicken Sie im Menü Datei auf Neues Projekt.

  2. Klicken Sie im Dialogfeld Neues Projekt auf Windows, und klicken Sie dann auf Klassenbibliothek. Geben Sie im Feld Name die Zeichenfolge OpenWeb ein.

    Das Projekt wird zum Projektmappen-Explorer hinzufügt.

  3. Klicken Sie im Menü Projekt auf Klasse hinzufügen, und wählen Sie dann im Dialogfeld Neues Element hinzufügen die Option Installerklasse aus. Übernehmen Sie den Standardnamen von "Installer1", und klicken Sie dann auf Hinzufügen.

  4. Schalten Sie in die Codeansicht um, indem Sie entweder auf der Entwurfsoberfläche auf klicken Sie hier, um zur Codeansicht zu wechseln klicken (oder indem Sie mit der rechten Maustaste auf die Entwurfsoberfläche klicken und Code anzeigen auswählen).

  5. Fügen Sie der Installer1-Codedatei im Code-Editor den folgenden Code (der einen Webbrowser öffnet) unterhalb des Konstruktors hinzu:

    <Security.Permissions.SecurityPermission(Security.Permissions.SecurityAction.Demand)>
    Public Overrides Sub Install(ByVal stateSaver As System.Collections.IDictionary)
        MyBase.Install(stateSaver)
    End Sub
    
    <Security.Permissions.SecurityPermission(Security.Permissions.SecurityAction.Demand)>
    Public Overrides Sub Commit(
      ByVal savedState As System.Collections.IDictionary)
    
        MyBase.Commit(savedState)
        System.Diagnostics.Process.Start("https://www.microsoft.com")
    End Sub
    
    <Security.Permissions.SecurityPermission(Security.Permissions.SecurityAction.Demand)>
    Public Overrides Sub Rollback(ByVal savedState As System.Collections.IDictionary)
        MyBase.Rollback(savedState)
    End Sub
    
    <Security.Permissions.SecurityPermission(Security.Permissions.SecurityAction.Demand)>
    Public Overrides Sub Uninstall(ByVal savedState As System.Collections.IDictionary)
        MyBase.Uninstall(savedState)
    End Sub
    
    [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
    public override void Install(IDictionary stateSaver)
    {
        base.Install(stateSaver);
    }
    
    [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
    public override void Commit(IDictionary savedState)
    {
        base.Commit(savedState);
        System.Diagnostics.Process.Start("https://www.microsoft.com");
    }
    
    [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
    public override void Rollback(IDictionary savedState)
    {
        base.Rollback(savedState);
    }
    
    [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
    public override void Uninstall(IDictionary savedState)
    {
        base.Uninstall(savedState);
    }
    

    Tipp

    Wenn Sie Public Overrides und danach ein Leerzeichen eingeben, zeigt Intellisense eine Liste mit Methoden und Eigenschaften an. Wenn Sie in der Liste beispielsweise Commit auswählen, erhalten Sie die vollständige Deklaration. Wiederholen Sie den Schritt für Install-, Rollback- und Uninstall-Methoden.

  6. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf die Class1-Codedatei, und klicken Sie dann auf Löschen (da die Datei nicht benötigt wird).

So fügen Sie ein Bereitstellungsprojekt hinzu

  1. Zeigen Sie im Menü Datei auf Hinzufügen, und klicken Sie auf Neues Projekt.

  2. Erweitern Sie im Dialogfeld Neues Projekt hinzufügen den Knoten Andere Projekttypen, erweitern Sie Setup und Bereitstellungsprojekte, klicken Sie auf Visual Studio Installer, und klicken Sie dann auf Setup-Projekt. Geben Sie im Feld Name die Zeichenfolge Custom Action Installer ein.

    Das Projekt wird zum Projektmappen-Explorer hinzugefügt, und der Dateisystem-Editor wird geöffnet.

  3. Wählen Sie im Dateisystem-Editor den Anwendungsordner im linken Bereich aus. Zeigen Sie im Menü Aktion auf Hinzufügen, und klicken Sie dann auf Projektausgabe.

  4. Im Dialogfeld Projektausgabegruppe hinzufügen wird OpenWeb in der Liste Projekt angezeigt. Wählen Sie Primäre Ausgabe aus.

    Im Anwendungsordner wird Primäre Ausgabe von OpenWeb (aktiv) angezeigt.

So fügen Sie die benutzerdefinierte Aktion hinzu

  1. Wählen Sie das Projekt Custom Action Installer im Projektmappen-Explorer aus. Zeigen Sie im Menü Ansicht auf Editor, und klicken Sie auf Benutzerdefinierte Aktionen.

    Der Editor für benutzerdefinierte Aktionen wird angezeigt.

  2. Wählen Sie im Editor für benutzerdefinierte Aktionen den Knoten Commit ausführen aus. Klicken Sie im Menü Aktion auf Benutzerdefinierte Aktion hinzufügen.

  3. Doppelklicken Sie im Dialogfeld Element im Projekt auswählen auf den Anwendungsordner. Wählen Sie Primäre Ausgabe aus OpenWeb aus.

    Primäre Ausgabe von OpenWeb wird unter dem Knoten Commit ausführen im Editor für benutzerdefinierte Aktionen angezeigt.

  4. Stellen Sie im Eigenschaftenfenster sicher, dass die InstallerClass-Eigenschaft auf True festgelegt ist (dies ist die Standardeinstellung).

  5. Wählen Sie im Editor für benutzerdefinierte Aktionen den Knoten Installieren aus, und fügen Sie den Knoten Primäre Ausgabe von OpenWeb hinzu, indem Sie genauso vorgehen wie für den Knoten Commit ausführen.

  6. Klicken Sie im Menü Erstellen auf Custom Action Installer erstellen.

So installieren Sie auf dem Entwicklungscomputer

  • Wählen Sie das Projekt Custom Action Installer im Projektmappen-Explorer aus. Klicken Sie im Menü Projekt auf Installieren.

    Dadurch wird das Installationsprogramm ausgeführt und das Benutzerdefinierte Aktion-Installationsprogramm auf dem Entwicklungscomputer installiert. Am Ende der Installation sollte Internet Explorer gestartet und die Website Microsoft.com geöffnet werden.

    Tipp

    Zum Ausführen des Installationsprogramms benötigen Sie entsprechende Installationsberechtigungen für den Computer.

So geben Sie an einen anderen Computer weiter

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Setup-Projekt, und klicken Sie dann auf Ordner in Windows Explorer öffnen.

  2. Navigieren Sie zur Projektausgabe, und kopieren Sie Custom Action Installer.msi, Setup.exe und alle anderen Dateien und Unterverzeichnisse im Verzeichnis auf einen anderen Computer.

    Tipp

    Wenn Sie die Installation auf einem Computer durchführen möchten, der nicht mit einem Netzwerk verbunden ist, kopieren Sie die Dateien auf ein Medium, beispielsweise eine CD-ROM.

  3. Doppelklicken Sie auf dem Zielcomputer auf die Datei Setup.exe, um das Installationsprogramm auszuführen.

    Am Ende der Installation sollte Internet Explorer gestartet und die Website Microsoft.com geöffnet werden.

    Tipp

    Zum Ausführen des Installationsprogramms benötigen Sie entsprechende Installationsberechtigungen für den Computer.

    Tipp

    Wenn .NET Framework auf dem Zielcomputer noch nicht installiert ist, wird es mit dieser Bereitstellung installiert. Dies kann einige Minuten dauern.

So deinstallieren Sie die Anwendung

  1. Doppelklicken Sie in der Systemsteuerung auf Software.

  2. Wählen Sie im Dialogfeld Software die Anwendung Custom Action Installer aus, und klicken Sie auf Entfernen.

    Tipp

    Um die Anwendung vom Entwicklungscomputer zu deinstallieren, öffnen Sie das Projekt Custom Action Installer, wählen es im Projektmappen-Explorer aus und klicken im Menü Projekt auf Deinstallieren.

Siehe auch

Weitere Ressourcen

Verwalten von benutzerdefinierten Aktionen bei der Bereitstellung