Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Setup\WebSetup Projekt
plongo
myCSharp.de - Member



Dabei seit:
Beiträge: 123
Herkunft: RLP

Themenstarter:

Setup\WebSetup Projekt

beantworten | zitieren | melden

Hallo,

für unseren Produkt möchten wir ein Setup\Websetup generieren um die Installation beim Kunden zu erleichertn.
Nun arbeite ich mich in dieses Thema ein.

Über Visual Studio 2005 werden mir Setups zur Verfügung gestellt.
Zu den Standardfunktionen die das Setup schon anbietet, ist es ja auch möglich eigene Aktionen zu definieren.

Dafür benötige ich aber Parameter\Properties z.b. Installtionspfad unseres Produktes.

Leider finde ich nirgends eine Information wie ich diese ermitteln kann.

Für jede gute Quelle bin ich dankbar.


Mfg
Gruss plongo

---------------------------------------------------------------------------
Woher soll ich wissen, was ich denke, bevor ich höre, was ich sage!
Kurzum: Läufer sind gesünder, "gescheiter" und glücklicher als Nichtläufer.
www.andreas-nicole.de
private Nachricht | Beiträge des Benutzers
plongo
myCSharp.de - Member



Dabei seit:
Beiträge: 123
Herkunft: RLP

Themenstarter:

beantworten | zitieren | melden

Hi,

über http://msdn2.microsoft.com/de-de/library/system.configuration.install.installer(VS.80).aspx

sollte mir der Installer.Context.Parameters Werte (wie z.b Install-DIR) ausgeben.

Nun habe ich mir eine eigene Installer Klasse erstellt und die Installt Methode überschrieben.

Und mit folgenden Code gefüllt:


      System.Collections.IDictionary)
        MyBase.Install(stateSaver)

        'AddDBTable(Me.Context.Parameters.Item("sql"))
        '', _                   Me.Context.Parameters.Item("sql"))

        Try
            Log("Install")
            LeseParameter(Me.Context.Parameters)
            'LeseInstallers(Me.Installers)
        Catch ex As Exception
        End Try
    End Sub


    Private Sub Log(ByVal text As String)
        Dim writer As StreamWriter = New StreamWriter("S:\Tests\log\log.txt", True)

        writer.WriteLine(text)

        writer.Flush()
        writer.Close()
    End Sub

    Private Sub LeseParameter(ByVal parameters As System.Collections.Specialized.StringDictionary)
        Log(parameters.Count.ToString)
        For Each parameter As String In parameters.Keys
            Log(parameter & " = " & parameters(parameter))
        Next
    End Sub

Dieses gibt mir folgende Werte in der log.txt aus:

Install
5
action = install
sql = test
installtype = notransaction
assemblypath = C:\Programme\yyy\zzz\OpenWeb.dll
logfile = 

Ok, der assemblypath gibt mir schon den Pfad aus, aber ohne die dll wäre es mir schon lieber.
Gruss plongo

---------------------------------------------------------------------------
Woher soll ich wissen, was ich denke, bevor ich höre, was ich sage!
Kurzum: Läufer sind gesünder, "gescheiter" und glücklicher als Nichtläufer.
www.andreas-nicole.de
private Nachricht | Beiträge des Benutzers
plongo
myCSharp.de - Member



Dabei seit:
Beiträge: 123
Herkunft: RLP

Themenstarter:

beantworten | zitieren | melden

Hi,

habe die Lösung gefunden.

Das Property CustomActionData muss den Wert /name="[TARGETDIR]\" enthalten.

Danach kann ich auf die gewünschte Information zugreifen.

Danke & Mfg
plongo
Gruss plongo

---------------------------------------------------------------------------
Woher soll ich wissen, was ich denke, bevor ich höre, was ich sage!
Kurzum: Läufer sind gesünder, "gescheiter" und glücklicher als Nichtläufer.
www.andreas-nicole.de
private Nachricht | Beiträge des Benutzers