Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Installieren! Nur wie? (https://www.delphipraxis.net/938-installieren-nur-wie.html)

Phoenix 28. Sep 2002 18:35


Installieren! Nur wie?
 
Hi Leute,

mal eine ganz banale Frage, die es aber offensichtlich in sich hat :)

Wie kann ich meine Programme (Share und Freeware / z.t. OpenSource) einfach und vor allem sicher zum Einsatz bringen?

Zum einen habe ich mir überlegt, einen Installer selber zu schreiben. Allerdings ist das dann doch ein recht komplexes unterfangen und das habe ich dann bereits verworfen.

Welche Alternativen gibt es hier, bzw. gibt es einen einfachen und vor allem kostenlosen Weg, Software zum Beispiel als MSI oder in einer anderen Standard - Installation zu verpacken?

Ich möchte es dem User a) möglichst einfach machen und b) auch nach einer automatischen Deinstallation ein sauberes bzw. unverändertes System hinterlassen. Um nicht zu sagen: Ich will es so machen, wie ein guter Entwickler es eigentlich immer machen sollte, aus Zeitgründen aber meistens nicht macht :)

Schonmal vielen Dank :)

MathiasSimmack 28. Sep 2002 18:47

Eine Installation ist in jedem Fall eine schöne Sache. Als Möglichkeiten fallen mir ein:
  • InstallShield Express - liegt Delphi ab Pro-Version bei. Nur habe ich keine Ahnung davon
  • MSI - gewöhnungsbedürftig und am Anfang vielleicht schwer zu lernen, wenn man nur die kostenlosen Tools von Microsoft hat. Wer ein entsprechendes Tool wie WISE oder IShield for MSI sein eigen nennt, der hat schon mal die besseren Voraussetzungen.
    Microsoft bietet den kostenlosen Visual Studio Installer, der sich allerdings im Visual Studio integriert (und das ist leider nicht kostenlos)
  • InnoSetup - in Delphi geschrieben, offene Quellen, angeguckt habe ich´s mir auch. Aber andere kennen sich besser aus.
Selbst schreiben würde ich heute keinen Installer mehr. Dazu gibt´s zuviele Möglichkeiten (ich denke mal nur an Verknüpfungen, Dateitypen registrieren, Autostarts ... bla bla)

Klabautermann 28. Sep 2002 23:41

Hallo,

ich habe sehr gute erfahrungen mit Inno-Setup gemacht. Dort musst du ein kleines Script erstellen, das sehr an eine INI-Datei erinnert. Dort kannst du alle angaben zur Installation und Deinstallation machen (z.B. ob von dienem Programm erstellte Dateien [sofern an einem bestimmten Ort] auch gelöscht werden sollen oder nicht). Sollte der funktionsumfang einmal nicht reichen gibt es ein erweitertes Programm namens My Inno Setup Extensions welches dir sogar erlaubt dein Setup-Programm mit Pascal-Script zu erweitern.

Ein rechtliches (keine technisches) Problem gibt es wenn du BDE-Anwendungen schreibst. Diese dürfen nur nit zertifizierten Setupprogrammen weitergegeben werden. Natürlich hat das Open-Source Projekt Inno-Setup kein Zertifikat. Deshalb musst du dann InstallShield(Express) verwenden.

Gruß
Klabautermann

Phoenix 29. Sep 2002 11:55

Hrm, dann werde ich mal dieses Inno-Setup ausprobieren. Da die BDE eh keine Statements > 64 Kb zulässt, ich die Dinger aber manchmal brauche habe ich mein Projekt sowieso auf Direct Access umgeschrieben. :coder:

Alternativ: Kennt jemand einen Link, wo ich diese 'kostenlosen Tools' von MS herbekomme, um mich mal an einem MSI zu versuchen? :dance:

Grüßle,

Phoenix

Christian Seehase 29. Sep 2002 12:19

Moin Phoenix,

such' mal auf MSDN nach ORCA.
Solltest Du da nicht fündig werden:
ORCA ist Bestandteil des PlatformSDK. Dazu solltest Du hier im Forum diverse Links finden.

CalganX 29. Sep 2002 12:23

@ Klabautermann: Soll das etwa heißen, dass ich meine Programme in Delphi nur mit Setup weitergeben kann, wenn ich was anderes als InnoSetup nutze??? Das ist doch Verarschung... :evil:

Chris

Luckie 29. Sep 2002 12:29

Klabautermannn bezihet sich da auf Anwendungen, bei denen die BDE weitergegeben werden muß.
Aber zu Inno-Setup gibt es auch ein Modul/Anleitung, wie man mittles Inno-Setup die BDE mit installieren kann. Deswegen bin ich mir nicht so sicher, ob es sich wirklich so verhält, wie Klabautermann meint.

Phoenix 29. Sep 2002 12:30

@Chakotay:
Ich hab das so verstanden, das man mich Lizenzmässig drankriegen kann wenn ich keinen zertifizierten Installer verwende, wenn ich Produkte mit der BDE vertreibe. Sei das nun kostenlos oder nicht sei mal dahingestellt.

Da ich aber die BDE nicht brauche (Gott sei Dank gibts da ja alternativen :) ) bin ich mit dieser Restriktion nicht gebunden. Was mich interessieren würde: Wenn ich Programme mit der BDE vertreiben würde, dürfte ich dann den MSI verwenden, oder ist der auch nicht zertifiziert?

Alexander 1. Okt 2002 18:34

ich stelle mir das gar nicht so schwer vor einen Installer zu schreiebn. Man könnte z.b. den Packer 7-Zip nehmen und ihn mit Parametern laufen lassen. So hat man mit dem komprimieren keine Probleme mehr. Dann müsst man sich nur noch um die Registry Einträge kümmern.
Aber sonst ist Inno wirklich nicht schlecht :mrgreen:

Christian Seehase 1. Okt 2002 20:21

Moin Alexander,

Deine Vorstellungen bezüglich des Aufwandes eines Installers in allen Ehren, aber Du irrst ;-)

Du gehst davon aus, dass Du ja weisst, wohin Deine Dateien sollen...
Wenn der Anwender das Programm nun aber an eine andere Stelle installieren will?
Dann noch so nette Sachen wie:
  • Installieren von Fonts
  • Installieren von Diensten
  • Installieren von ODBC Quellen
  • Editieren (nicht kopieren!) von INI Dateien
  • Betriebbsystemabhängig installieren
  • Shortcuts erzeugen
  • Möglichst gute Deinstallationen ermöglichen
  • Diverse Optionen wahlweise zur Verfügung stellen

Wenn ich noch ein paar Minuten länger darüber nachdenke fällt mir bestimmt noch mehr ein. :mrgreen:

Schau Dir dazu einfach mal das Windows Installer SDK an, oder die SETUP API (Bestandteile des PSDK).

Auf den ersten Blick sieht's zugegebener Massen nicht so aufwändig aus, allerdings auf den zweiten... ;-)

Alexander 2. Okt 2002 08:25

Sicher wird es nicht einfach (für mich mit meinen Delphi Kenntnissen, sowieso nicht) werden. Aber das Packprogramm würde ja einen großen Teil übernehmen. Tja nur kann man dann nciht behaupten, dass man alles selber gemacht hat. Das war ja eher auch nur ein Gedankenspiel, was man mir diesem PAckprogramm alles machen könnte

Christian Seehase 2. Okt 2002 10:54

Moin Alexander,

was Installationen angeht bin ich auch leicht im Vorteil. Ein grosser Teil meines "täglichen Brotes" ist die automatisierte Installation von Anwendungen und Betriebssystemen. ;-)

m-werk 4. Okt 2002 07:20

Hab ich das jetzt so richtig verstanden, wenn ich mit Inno-Setup eine Setupdatei von meinem Programm erstelle, dann darf ich es gar nicht offiziell verkaufen?

sakura 4. Okt 2002 08:26

Zitat:

Zitat von m-werk
Hab ich das jetzt so richtig verstanden, wenn ich mit Inno-Setup eine Setupdatei von meinem Programm erstelle, dann darf ich es gar nicht offiziell verkaufen?

Solange Du die BDE benötigst nicht, ansonsten ja. Du kannst aber die BDE Installation separieren und in InstallShield Light erstellen und als automatisierte Sub-Installation ausführen, dann ist es wieder in Ordnung.
Wenn Du ein Programm ohne BDE auslieferst, dann kannst Du ohne Probleme Inno-Setup nutzen.

Borlands Klausel beschränkt sich ausschliesslich auf die BDE. Der Grund besteht darin, das bei der Installation der BDE sehr systemnahe Änderungen vorgenommen werden, und Borland will keine rechtlichen Probleme bekommen, wenn durch die Installation der BDE Daten verloren gehen, etc. Bedenke, die USA hat eine sehr rigoroses Recht mit finziell hohen Strafen.

m-werk 4. Okt 2002 10:38

Ich weiss, das klingt jetzt ziemlich blöd, aber bitte beschreibe mir, was genau BDE bedeutet und ist!

Daniel B 4. Okt 2002 10:49

Hi,

BDE(Borland Database Engine)
Datenbank-Modul, welches anderen Anwendungen wie Delphi, DBase und Paradox eine einheitliche Schnittstelle für den Zugriff auf verschiedene Datenbanken(dBase, Paradox usw.) zur Verfügung stellt.

Grüsse, Daniel :hi:

m-werk 4. Okt 2002 11:16

In meinem Programm verwende ich zwar eine Access-DB mit ADO zugriff, aber ich brauch nichts im Setup-Programm hinzufügen. Ich habe im Setup-Programm nur die Exe-Datei, die INI, Grafiken und die Access-DB.

Kann ich bei INNO bleiben?

Klabautermann 4. Okt 2002 12:09

Zitat:

Zitat von m-werk
Kann ich bei INNO bleiben?

Ja, kannst du. Wobei der Access ADO Treiber auch installiert sein will (auf den Meisten aber nicht allen Systemen vorhanden). Du solltest also überlegen, ob du den in dein Setup Programm aufnehmen willst oder einfach einen Link auf die M$-Seite setzt wo er (irgendwo) zu bekommen sein wird.
Aber der hat nichts mit dem Rechteproblem zu tun. Es geht wirklich nur um die BDE. Diese ist für gewöhnlich dann in Beutzung wenn du die notmalen tTable unf tQuery Komponenten verwendet werden. tADOTable und ähnliches sind nicht betroffen.

Gruß
Klabautermann

m-werk 4. Okt 2002 12:22

Jetzt interessiert mich folgendes. Wenn ich den ADO-Treiber auch mitinstallieren möchte, wo finde ich diesen?

sakura 4. Okt 2002 12:36

Borland Database Engine (BDE): Die Treiber um z.B. auf Paradox Datenbanken zuzugreifen.

MS Access Datenbanken spricht man i.A. über ADO (Jet Treiber) an. Da wird die BDE nicht benötigt.

sakura 4. Okt 2002 12:38

Zitat:

Zitat von m-werk
Jetzt interessiert mich folgendes. Wenn ich den ADO-Treiber auch mitinstallieren möchte, wo finde ich diesen?

http://www.microsoft.com/data/download.htm (MDAC Treiber 2.5 oder neuer)


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:09 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz