Autor Beitrag
Vera
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 82

WinXP Home
Delphi 2005 Personal
BeitragVerfasst: Di 03.01.06 11:25 
Hallo Forum! :P

Mein Chef möchte, dass unsere Software mit Hilfe des Windows Installer verteilt wird. Programme wie InstallShield oder Wise sind uns da etwas zu teuer und haben für unserer Ansprüche auch zu viele Funktionen. Ich hab auch WiX gefunden (war ein nettes Gespräch mit meinen Chef als ich ihm von "WiX" erzählt habe :-D). Allerdings finde ich die XML Dateien die man für WiX erstellen muss nicht sonderlich komfortabel. Im großen und ganzen haben die von WiX doch einfach die MSI-Tabellen in XML Form gebracht. :(

Jetzt meine Frage: Kennt Ihr noch andere Programme die MSI Dateien erstellen können? Mir wäre es am liebsten wenn die Projektdateien simplen Textdateien sind. Diese lassen sich dann besser mit einem VersionsControlSystem handeln. Außerdem muss auch ein Kommandozeilenprogramm vorhanden sein, damit ich die MSI Datei innerhalb des automatischen Build-Prozess erzeugen kann.

Vielen dank für Eure Hilfe!

Bye Vera. :roll:
MisterBum83
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 245
Erhaltene Danke: 2

WIN XP
Delphi 6
BeitragVerfasst: Di 03.01.06 11:45 
Also ich benutze [url]www.innosetup.com[/url] . Das ist ein super Programm (kostenlos) zum erstellen von Installationen.
Vera Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 82

WinXP Home
Delphi 2005 Personal
BeitragVerfasst: Di 03.01.06 11:48 
InnoSetup erstellt aber keine MSI Dateien.
Martin1966
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1068

Win 2000, Win XP
Delphi 7, Delphi 2005
BeitragVerfasst: Di 03.01.06 12:18 
Hallo :wink2:

Das Tool msi2xml ist vergleichbar mit WiX. Allerdings wandelt das Tool die Tabellen 1 zu 1 in XML um. Ist also auch nicht so sonderlich konfortabel.

Lg Martin

_________________
Ein Nutzer der Ecke ;-)
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Do 05.01.06 14:11 
Hi Vera,

ich bastele schon seit Jahren an ein Programm rum welches MSI Dateien erstellen kann. Anhand einer Scriptsprache wird das zu installierende Projekt beschrieben. Ein Klick auf Kompilieren und die MSI Datei (oder auch eine ausführbare Anwendung) wird erstellt. Es ist auch ein Kommandozeilen Programm dabei um zum Beispiel das Setup innerhalb eines Buildvorgangs erstellen zu lassen.

Da es dir sehr auf das Eingabeformat ankommt poste ich hier mal einen Teil eines Beispielscripts damit Du Dir einen ersten Eindruck von der Script machen kannst:

ausblenden volle Höhe Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
<Project>
  Name = 'Styledev Installer';
  Author = 'Tino Teuber';

  //
  // Product
  //
  <Product>
    Name = 'Styledev Installer';
    Version = '1.0.0.0';
    Manufacturer = 'Tino Teuber';

    ProductCode = '{3ECB97B5-78D9-4A94-A416-CFA22DF2DA93}';
    PackageCode = '{5A5B4FE9-77F2-49D6-BA0F-CACB0F1C68BB}';
    UpgradeCode = '{53794E7B-51D5-4112-BBDF-C8F752D4D66D}';
    
    InstallFolder = '{ProgramFilesFolder}\Styledev Installer';

    <ControlPanel>
      ProductURL = 'http://www.styledev.de';
      ProductUpdateURL = 'http://www.styledev.de/update';
    </ControlPanel>
  </Product>

  //
  // Components
  //
  <Components>
  
    <Component>
      Name = 'compMain';
      Code = '{CB9FFAB9-A0E2-48E4-9BA5-FB078040173A}';
      Target = '{ProgramFilesFolder}\Styledev Installer';

      <File> Source = '..\Files\sicl32.dll'; </File>
      <File> Source = '..\Files\sivc32.exe'; </File>
      <File> Source = '..\Files\sicc32.exe'; </File>
      <File> Source = '..\Files\bootldr.e32'; </File>
      
      <Shortcut>
        Name = 'Style Installer';
        Directory = '{ProgramMenuFolder}\Styledev Installer';
        Target = '{ProgramFilesFolder}\Styledev Installer\SIVC32.exe';
        WorkingDirectory = '{ProgramFilesFolder}\Styledev Installer';
      </Shortcut>
      
      <Registry> 
         Root = HKCU;
         Key = 'Software/Test';
         Action = raAppend;
         Type = rtMultiString;
         Value = 'Test';
      </Registry>
    </Component>

    <Component>
      Name = 'compDoc';
      Code = '{A5A72380-759F-42FB-9F63-9FEF87F88908}';
      Target = '{ProgramFilesFolder}\Styledev Installer\Help';
      
      <File> Source = '..\Files\si.chm'; </File>

      <Shortcut>
        Name = 'Dokumentation';
        Directory = '{ProgramMenuFolder}\Styledev Installer';
        Target = '{ProgramFilesFolder}\Styledev Installer\Help\si.chm';        
        WorkingDirectory = '{ProgramFilesFolder}\Styledev Installer';
      </Shortcut>
    </Component>

  </Components>

  //
  // Features
  //
  <Features>
    <Feature>
      Title = 'Anwendung';
      Description = 'Installiert die grundlegenden Dateien.';
      Level = 1;
      Display = fdExpanded;
      
      <ComponentLink> Name = 'compMain';</>

      <Feature>
        Title = 'Dokumentation';
        Description = 'Installiert die Dokumentation von Styledev Installer';
        Level = 1;
  
        <ComponentLink> Name = 'compDoc';</>
      </Feature>

    </Feature>
  </Features>

  //
  // Standard Dialogs
  //
  {$INCLUDE UserInterface.sis}

</Project>

Das Programm unterstützt noch nicht alle Möglichkeiten von MSI da sich die ganze Anwendung noch in einem sehr frühen Entwicklungsphase befindet. So ist es zum Beispiel zur Zeit nur möglich Dateien installieren/deinstallieren, Shortcuts zu erstellen und Registry-Werte /-Zweige installieren/deinstallieren zu lassen. Auch die Dialoge lassen sich schon (fast) komplett selbst designen. Conditionals lassen sich auch definieren.

Das Programmpaket besteht aus zwei Anwendungen, einer Bibliothek und einer Hilfedatei:
  • Ein Editor um die Installationsprojekte zu verwalten, zu kompilieren und Fehler zu beseitigen. Syntaxhighlighting gehört genauso dazu wie Codevervollständigung und Release-Definitionen.
  • Der Kommandozeilen Compiler um ein Script in der Eingabeaufforderung zu kompilieren.
  • Eine Bibliothek welche von den beiden o. g. Programme verwenden wird um ein Projekt zu kompilieren
  • Die Hilfedatei enthält unter anderem die komplette Script-Referenz welche zum Teil schon dokumentiert ist.
Wenn du mal Lust hast das Programm zu testen dann melde dich einfach bei mir. Vielleicht reichen die jetzigen Funktionen ja bereits für Deine Anforderungen aus. ;-)

Gruß
Tino
Danny87
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 688

Windows 10 Pro 64bit
Sprachen: HTML, PHP, JavaScript, Delphi || IDE: RAD Studio 10.1 Berlin Starter, WeBuilder
BeitragVerfasst: Do 05.01.06 14:28 
warum möchte dein chef überhaupt unbedingt, dass eure software mit Hilfe des Windows Installer verteilt wird?
welche vorteile verspricht er sich dadurch? ich benutze seit jahren InnoSetup und bin sehr zufrieden. hat nicht übermässig viele funktionen, aber auch nicht zu wenige. die funktionen die mir innosetup bietet sind sehr sinnvoll und ein besseres (freeware-)tool zum erstellen von setupdateien wirst du kaum finden.


gruss daniel
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Do 05.01.06 14:54 
Vorteile von Windows Installer Installationen sind zum Beispiel:
  • Automatische Reperatur, wenn versehentlich eine Datei vom User gelöscht oder geändert wurde.
  • Rollback, wenn eine Installation nicht fehlerfrei durchgeführt wurde
  • Installationen können angekündigt werden. Es werden nur die s.g. "Entry-Points" erstellt, also zum Beispiel Shortcuts und Dateierweiterungen. Die eigentliche Anwendung wird erst bei Bedarf installiert.
  • Componenten-Sharing, um bestimmte Programmteile einer Installation mit anderen Installationen zu teilen.
  • Transforms, um eine Installation zu ändern. So kann man zum Beispiel eine englische Installation eindeutschen.
  • Eine Installation kann unbeaufsichtigt installiert werden.
  • Patching und Upgrades lassen sich mit Hilfe des Windows Installer (am besten in der neuesten Version) recht sauber durchführen.
  • Der Windows Installer Dienst sowie die notwendigen Tools von MS um eine Installation zu erstellen sind kostenlos
Außerdem muss eine Software durch ein MSI-Paket installiert werden, um zukünftig das Microsoft Logo "Certified for Windows 2000" zu erhalten.

Gruß
Tino
Danny87
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 688

Windows 10 Pro 64bit
Sprachen: HTML, PHP, JavaScript, Delphi || IDE: RAD Studio 10.1 Berlin Starter, WeBuilder
BeitragVerfasst: Do 05.01.06 15:01 
hmm.... okay.
das hat mich überzeugt.
Vera Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 82

WinXP Home
Delphi 2005 Personal
BeitragVerfasst: Fr 06.01.06 14:52 
Hi Tino!

Das sieht doch schon ganz gut aus. Würde mich über eine Testversion von Deinem Programm freuen (am besten per E-Mail). Vielleicht können wir es hier in der Firma ja einsetzen. Dazu muss ich es aber vorher testen. ;-)

bye Vera
Martin1966
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1068

Win 2000, Win XP
Delphi 7, Delphi 2005
BeitragVerfasst: Di 10.01.06 14:28 
@Timo: Wäre es möglich, dass du mir das Programm auch mal zukommen lässt? :flehan:

_________________
Ein Nutzer der Ecke ;-)
digi_c
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1905

W98, XP
D7 PE, Lazarus, WinAVR
BeitragVerfasst: Mi 11.01.06 15:17 
Also so wie ich es verstanden habe ist der einzige Grund von MSI die Problemlose Verteilung per ADS. Ich glaube bei anderen Installern müssen die Admins noch spezielle Dateien bauen.

Ich würde dir wirklich NSIS(Nullsoft Setup Installer System) ans Herz legen. Das ist von WinAMP und wirklich sehr ausgereift und hat ne Menge Tools.

Ansonsten such mal bei www.efb.nu nach MSI Tools.
Robert_G
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 416


Delphi32 (D2005 PE); Chrome/C# (VS2003 E/A, VS2005)
BeitragVerfasst: Mi 11.01.06 17:49 
Falls du mit dem VS.Net (>= 2003) arbeitest gäbe es da noch die Setup Projects. Die stellen sich fast komplett von alleine an dein(e) Projekt(e) ein. Auch Abhängigkeiten auf Bibliotheken/Content files werden berücksichtigt.
Ist zwar kein wirklicher Ersatz für InstallSchield & Co aber 100-mal besser als irgendwelche WiX-Vorlagen ( :mrgreen: ) runterzutippen.
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 11.01.06 23:37 
user profile iconRobert_G hat folgendes geschrieben:
WiX-Vorlagen ( :mrgreen: )

Ich finde das gut. :mrgreen: Das Teil, das 2004 in der DP verlost wurde, das hätte mich interessiert. War auch ein gutes MSI-Installer-Tool. Ich habe nur den Namen vergessen. :( War aber eh kostenpflichtig.
Robert_G
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 416


Delphi32 (D2005 PE); Chrome/C# (VS2003 E/A, VS2005)
BeitragVerfasst: Mi 11.01.06 23:59 
user profile iconMathiasSimmack hat folgendes geschrieben:
Ich finde das gut. :mrgreen:
Ging ja auch eigentlich an dich. Ich konnte mir doch gleich denken, dass du einem WiX thread nicht widerstehen kannst. :mrgreen: Wie gates eigentlich deinen WiX Visuals? Der Anfang sah damals doch sehr nett aus. ;)
Zitat:
Das Teil, das 2004 in der DP verlost wurde, das hätte mich interessiert.
Das war InstallAware, IMHO nicht so cool wie IS...
digi_c
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1905

W98, XP
D7 PE, Lazarus, WinAVR
BeitragVerfasst: Do 12.01.06 09:29 
Also bei uns ist ein Einzelner nur damit beschäftigt die Setups zusammenzustellen aber auch da ist immer nur Installshield am werkeln...
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 12.01.06 11:00 
user profile iconRobert_G hat folgendes geschrieben:
Wie gates eigentlich deinen WiX Visuals? Der Anfang sah damals doch sehr nett aus. ;)

Über die zwei Editoren für SharpDevelop 1.x bin ich nicht hinaus gekommen. :oops: Beim neuen #d 2 müsste ich mich wohl erst mal mit diesem MSBuild-Kram beschäftigen, weil die ganze Kompilierung von was auch immer da durch geleitet wird.
Vera Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 82

WinXP Home
Delphi 2005 Personal
BeitragVerfasst: Do 12.01.06 12:11 
Guten Morgen!!!!

Ich denke ehr, das die ADS Verteilung ein weiteres Argument ist. Weitere hat Tino ja bereits oben gepostet.

MSI ist meiner Meinung nach auch sehr ausgereift. Und wenn MS schafft, das komplette Office Paket damit bereits vor vielen Jahren erfolgreich zu installieren dann denke ich, dass man hier schon von "ausgereift" sprechen kann. ;-)

Auf jeden Fall werden wir MSI verwenden. Die Frage ist nur: Welches Tool wir dafür verwenden. InstallShield und Co sind einfach viel zu teuer und haben auch zu viele Funktionen. Ich will es schön einfach über ein Script machen. ;-) Ich weiß, bei InstallShield kann man die Projektdatei als XML speichern.


@Tino: Eine längere E-Mail bekommst du noch von mir. Dein Programm läuft so weit ganz gut. ;-)


bye bye! Vera!!
blah
Hält's aus hier
Beiträge: 1



BeitragVerfasst: So 19.02.06 10:15 
Hi leute,

ich werf da noch mal den Advanced Installer in die runde :P
www.advancedinstaller.com/

evtl. sagt der ja dem einen oder anderen zu.

MfG blah
Vera Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 82

WinXP Home
Delphi 2005 Personal
BeitragVerfasst: Fr 03.03.06 10:03 
Danke für Deine Antwort.

Das Programm habe ich mir auch mal angeschaut. Ich meine, dass man damit keine eigenen Dialog erstellen konnte. Bin mir allerdings nicht mehr ganz sicher warum das Programm von meiner Liste gestrichen wurde. :gruebel:

Bye, Vera!