Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Programmstarter
Apo95 - Mo 11.06.12 19:07
Titel: Programmstarter
Hallo, ich bin gerade dabei einen kleinen Programmstarter zu scheiben, hier der Code:
Delphi-Quelltext
1: 2: 3: 4:
| Timer1.Enabled :=true; ProgressBar1.Position :=Timer1.Interval; if ProgressBar1.Position =100 then SHELLEXECUTE (handle,'open','C:\Program Files (x86)\EA und SUMIT.de GmbH in Zusammenarbeit mit GG Berlin\ApoPlus Apothekensystem 2010\ApoPlus 1.0\ApoPlus 1.0 DELPHI2009\Apo.exe','','',SW_SHOWNORMAL); |
// Sollte die EXE nicht gefunden werden, dann die unten stehende Fehlermeldung //
Delphi-Quelltext
1: 2:
| Application.MessageBox('Die Datei Apo.exe konnte nicht gefunden werden. Möglicherweise wurde die Datei umbenannt, verschoben oder entfernt. Installieren Sie das Programm'#13+ 'erneut, um Fehler zu beheben.','Datei nicht gefunden.',mb_ICONSTOP or mb_OK); |
Irgendwie will mir der Befehl nicht einfallen...
Moderiert von
Martok: Delphi-Tags hinzugefügt
Boldar - Mo 11.06.12 19:19
Du könntest einfach vorher mit
fileexists schauen. Nebenbei hat
Shellexecute [
http://msdn.microsoft.com/en-us/library/windows/desktop/bb762153%28v=vs.85%29.aspx] auch einen rückgabewert, den man auswerten könnte.
Desweiteren wird dein Code so nicht funktionieren:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| Timer1.Enabled :=true; ProgressBar1.Position :=Timer1.Interval; if ProgressBar1.Position =100 then SHELLEXECUTE (handle,'open','C:\Program Files (x86)\EA und SUMIT.de GmbH in Zusammenarbeit mit GG Berlin\ApoPlus Apothekensystem 2010\ApoPlus 1.0\ApoPlus 1.0 DELPHI2009\Apo.exe','','',SW_SHOWNORMAL);
Application.MessageBox('Die Datei Apo.exe konnte nicht gefunden werden. Möglicherweise wurde die Datei umbenannt, verschoben oder entfernt. Installieren Sie das Programm'#13+ 'erneut, um Fehler zu beheben.','Datei nicht gefunden.',mb_ICONSTOP or mb_OK); |
Warum überhaupt den Nutzer warten lassen??
Damit das cool aussieht?
Dann starte das Programm aus dem Timer, wenn die Progressbar durchgelaufen ist. Oder benutze eine schleife mit
sleep und
application.processMessages
Apo95 - Mo 11.06.12 19:51
Mit file exists habe ich noch nie gearbeitet...
Geht das so:
if fileExists('')=false ... ?
ich habe den Quellcode unter Timer1Create gesetzt.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!