Seite 18 von 54
Verfasst: 16.09.2006 02:15
von Kaeru Gaman
ts-soft hat geschrieben:...Zusatzoption... (optional)... Es muß ja nicht verwendet werden, es kann!
so wäre das ok.

Verfasst: 16.09.2006 15:03
von Thorsten1867
Neue Version 0.4.6b
- Überprüfung ob das (zu installierende) Programm läuft und erst beendet werden muss
Optional: MutexString (muss im Programm erzeugt werden)
Ansonsten: Abfrage der Prozessliste (unsicher!)
- Programmcode für 'Mutex' anzeigen (PB/Delphi/Profan)
PS: Benötige noch Codebeispiele ('CreateMutex') für:
C / C++ / VisualBasic / ASM / .....
Verfasst: 16.09.2006 22:22
von neotoma
Ich finde die ganze Diskussion über Mutex und konsorten recht interessant, aber irgendwie für den eigentlichen Installer nicht von elementarer Bedeutung. Es wäre meiner Meinung nach besser eine alternative DLL anzugeben, die dann von Installer vor dem Install-Vorgang aufgerufen wird.
Dadurch bliebe die Mutex/Prozess/Windownamen-Prüfung beim eigentlichen entwickler, und dieser hätte dann auch die Möglichkeit weitere Prüfungen oder z.B. Codeeingaben einzubauen, ohne das der eigentliche Installer davon
betroffen ist.
Ich würde mir vorstellen, das man hierfür 2 Funktionen in der DLL angeben muss (z.B. EasySetupBefore() und EasySetupAfter()). Diese würden vom Installer dann aufgerufen, nachdem der Installer die DLL in das Temp-Verzeichnis geschrieben hat.
Ist nur ein Vorschlag..
(Außerdem würde ich gerne das Header-Image selbst definieren... )
Michael
Verfasst: 16.09.2006 23:36
von vonTurnundTaxis
Warum erstellt nicht der Installer das Mutex, das vom Programm aus gelesen werden kann?
Verfasst: 16.09.2006 23:43
von ts-soft
vonTurnundTaxis hat geschrieben:Warum erstellt nicht der Installer das Mutex, das vom Programm aus gelesen werden kann?
Wie?
Soll die Anwendung laufend prüfen, ob es zufällig neuinstalliert wird und sich
dann selbst beenden
Sehr schöner Vorschlag
Irgendwas wurde hier wohl falsch verstanden

Verfasst: 16.09.2006 23:44
von Thorsten1867
vonTurnundTaxis hat geschrieben:Warum erstellt nicht der Installer das Mutex, das vom Programm aus gelesen werden kann?
Das geht nicht. Das Programm erzeugt beim Start einen eindeutigen MutexString (z.B. GUID). Anhand dessen kann man dann sicher feststellen, dass das Programm läuft, unabhängig von sich ändernden Fenstertiteln, umbenannten EXE's, usw.
Unter PureBasic ist das ein Klacks. Eine Programmzeile zu Beginn und eine am Ende des Programmes. Die Alternative zum Mutex über die Prozessliste sollte immerhin noch um einiges sicherer sein, als das Auslesen der Fenstertitel.
Es ist also für alle etwas da und niemand muss weinen.

Verfasst: 16.09.2006 23:53
von ts-soft
>> Unter PureBasic ist das ein Klacks
Ist in jeder Sprache ein Klacks, da es sehr häufig gebraucht wird, z.B:
Damit Trayanwendungen nicht doppelt starten (meist nicht gewünscht)
Damit Programme, welche mehrere Dateien öffnen können nicht mehrfach
starten, sondern die bereits geöffnete Instanz anweisen, folgende Datei zu
laden, usw.
Jeder halbwegs erfahrene Anwendungsprogrammierer hat das bereits
genutzt. Andere Installer unterstützen diese auch, z.B. Inno-Setup.
Verfasst: 17.09.2006 00:00
von vonTurnundTaxis
ts-soft hat geschrieben:Soll die Anwendung laufend prüfen, ob es zufällig neuinstalliert wird und sich
dann selbst beenden
Warum nicht? Vielleicht etabliert es sich ja auch und in PB 5.0 Gibts dann #PB_Event_Uninstall und #PB_Event_Reinstall
Jaja, es war eine blöde Idee...
Verfasst: 17.09.2006 03:41
von Kaeru Gaman
vonTurnundTaxis hat geschrieben:Jaja, es war eine blöde Idee...
du willst nicht WIRKLICH, dass ich das jetzt kommentiere, oder?
Verfasst: 17.09.2006 03:53
von vonTurnundTaxis
Sprich dich nur aus
