Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Inno Setup und MySQL (https://www.delphipraxis.net/118399-inno-setup-und-mysql.html)

Sebbel 7. Aug 2008 05:37


Inno Setup und MySQL
 
Hallo,

ich habe ein kleines Programm geschrieben, das Patientenstammdaten über eine Datenbank auf einem lokalen MySQL Server verwaltet. Da ich das auch eventuell an Dritte weitegeben will, die sehr wahrscheinlich nicht in der Lage sind einen MySQL Server zu installieren und zu starten, geschweige denn die Tabellen zu erstellen, möchte ich diesen Leuten das Leben mit einem Installer leichter machen.
Über die Forumssuche bin ich auf Inno Setup gestoßen. Das Erstellen der Installationsdatei mit der nackten exe und ggf. ein paar readme-dateien funktioniert einwandfrei.
Nun möchte ich noch, dass der Installer die Installation des MySQL-Server startet, im Anschluss einen Kommandozeilenbefehl zum starten des Servers ausführt und dann noch einen SQL-Query zum Erstellen der Datenbank und zum Erstellen der Tabellen(-struktur) durchführt.
(Später soll vielleicht auch noch ein Registry-Eintrag vorgenommen werden)

Nun zu meinem eigentlichen Problem:
-ist das überhaupt mit Inno Setup möglich
-was muss ich tun, dass er das so macht wie ich das gerne hätte




Ich bedanke mich jetzt schonmal für hilfreiche Antworten.

mkinzler 7. Aug 2008 05:38

Re: Inno Setup und MySQL
 
Du könntest den MySQL-Installer aus InnoSetup heraus aufrufen.
Btw. dir sind die Lizenbedingungen von MySQL aber schon klar?

Bernhard Geyer 7. Aug 2008 06:18

Re: Inno Setup und MySQL
 
Ist dein Programm OpenSource? Falls nein fällt mit jeder Verteilung von MySQL eine MySQL-Serverlizenz an!!!

Sebbel 7. Aug 2008 06:32

Re: Inno Setup und MySQL
 
Zitat:

Zitat von mkinzler
Btw. dir sind die Lizenbedingungen von MySQL aber schon klar?

Sowie ich das verstanden habe
-wenn mein Programm selbst GPL lizenziert ist, benötige ich keine MySQL-Lizenz
-eine Lizenz benötige ich dann, wenn mein Programm MySQL als eingebettetes DBMS nutzt bzw. ausschließlich mit MySQL funktioniert (was laut Lizenzbedingungen als "eingebettet" betrachtet wird)
-ich möchte zwar nicht, dass andere personen Änderungen an meinem programm vornehmen, auch wenn ich es für sehr unwahrscheinlich halte, dass dies geschieht. Es wird aber wohl nicht anders gehen, wenn ich von den Leuten eine kleine Aufwandsentschädigung bekommen will.

Wie ist das überhaupt wenn ich software unter der GPL vertreiben möchte: MUSS ich den Quellcode per se irgendwo veröffentlichen? Oder kann ich sagen: Die software ist frei, wenn ihr was ändern wollt, könnt ihr mir mailen und ich schicke euch dann den Quelltext.
Ferner: Kann ich meine semi-kommerzielle version durch ein Passwort oder einen Freischaltcode vor ungewollter Nutzung sichern, wenn die Software unter GPL Lizenz steht? (Jemand der sie frei nutzen will, könnte ja diese Sicherung durch Änderungen am Quelltext umgehen)



Inno Setup werde ich mir im Laufe des Tages nochmal genauer anschauen. Bis jetzt habe ich allerdings wenig durchblick.

RWarnecke 7. Aug 2008 06:47

Re: Inno Setup und MySQL
 
Warum so umständlich ? Um dem ganzen Lizenzgehabe aus dem Weg zu gehen, würde ich im Programm selber abfragen ob die Tabellen vorhanden sind, wenn ja dann kannste mit dem Programm arbeiten. Wenn nein, dann lässt Du Dein eigentliches Programm die Tabellen erstellen. Im Setup zu Deinem Programm würde ich lediglich eine Abfrage machen, wo die Installationsdatei für den MySQL-Server liegt und dann eine Silent-Installation ausführen. Der Endanwender muss sich dann den MySQL-Server selber runterladen und bekommt durch Dein Setup die Installationshilfe. Hat der Endanwender den MySQL-Server schon selber installiert und konfiguriert, dann Lässt Du die Abfrage zur Installationsdatei einfach weg.

christian_u 7. Aug 2008 08:06

Re: Inno Setup und MySQL
 
Das scheint mir auch die bessere Möglichkeit zu sein.
Zumal wie willst du das lösen ? Du kannst den MySQL Server jawohl kaum immer mit dem selben passwort und benutzernamen konfigurieren wollen. Wenn doch solltest du darüber nacheenken ob du etwas in dieser Richtung machen solltest. Es geht hier um Patientendaten !!! Dafür gibts in Deutschland sehr strenge Vorschriften, und das ist gut so.

DevStar 7. Aug 2008 08:10

Re: Inno Setup und MySQL
 
Zitat:

Zitat von Sebbel
Da ich das auch eventuell an Dritte weitegeben will, die sehr wahrscheinlich nicht in der Lage sind einen MySQL Server zu installieren und zu starten, geschweige denn die Tabellen zu erstellen, möchte ich diesen Leuten das Leben mit einem Installer leichter machen.

Eine Software an Leute weiterzugeben, die keine Datenbank administrieren können ist mit Sicherheit der falsche Weg. Diese Leute werden auch nicht mit Deiner Patientenverwaltung umgehen können.
(Weiß ich aus über 25 Jahren Patienverwaltungs-Software-Erfahrung)

Du musst Dein Programm und den Service zusammen anbieten. Mache Deinen Kunden klar das es niemals anders geht.

Viel Erfolg.

Bernhard Geyer 7. Aug 2008 08:11

Re: Inno Setup und MySQL
 
Zitat:

Zitat von Sebbel
-eine Lizenz benötige ich dann, wenn mein Programm MySQL als eingebettetes DBMS nutzt bzw. ausschließlich mit MySQL funktioniert (was laut Lizenzbedingungen als "eingebettet" betrachtet wird)

Es reicht schon wenn über die libmysql.dll der zugriff auf die MySQL-Datenbank erfolgt. Damit wollte uns ein Vertreter von MySQL die Pistole auf die Brust setzen. Als wir dann gesagt haben das wir (mit Core Labs-Komponenten Hilfe) direkt auf die DB zugreifen ohne zuhilfenahme einer MySQL-DLL hat er seine Provisionen davonschwimmen sehen.

Sebbel 7. Aug 2008 14:00

Re: Inno Setup und MySQL
 
Zitat:

Zitat von RWarnecke
Warum so umständlich ? Um dem ganzen Lizenzgehabe aus dem Weg zu gehen, würde ich im Programm selber abfragen ob die Tabellen vorhanden sind, wenn ja dann kannste mit dem Programm arbeiten. Wenn nein, dann lässt Du Dein eigentliches Programm die Tabellen erstellen. Im Setup zu Deinem Programm würde ich lediglich eine Abfrage machen, wo die Installationsdatei für den MySQL-Server liegt und dann eine Silent-Installation ausführen. Der Endanwender muss sich dann den MySQL-Server selber runterladen und bekommt durch Dein Setup die Installationshilfe. Hat der Endanwender den MySQL-Server schon selber installiert und konfiguriert, dann Lässt Du die Abfrage zur Installationsdatei einfach weg.

Also:
Setup prüft ob der Server bereits installiert ist. Wenn nein, "pausiert" die eigentliche Installation mit Hinweis auf Herunterladen und URL von mysql, der Nutzer muss dann die geforderte Version herunterladen und den pfad der installationsdatei angeben und das root-passwort festlegen. Danach startet die installation im Hintergrund und die Tabellen werden angelegt.

Auf diese Weise kann ich mir das ganze Lizenzgedöns ersparen?

mkinzler 7. Aug 2008 14:03

Re: Inno Setup und MySQL
 
Wenn du nicht die Client-Dll von MySQL verwendest


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:13 Uhr.
Seite 1 von 2  1 2      

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