Autor Beitrag
SpeedyGTD
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 89



BeitragVerfasst: Fr 20.09.02 18:29 
tach erstmal, wie kann ich ein Programm komplett resten, dh ich will nicht jede Variable einzeln reseten, geht das und wenn ja wie?

PS: ich meine ein selber geschriebenes kein vorhandenes programm

_________________
...hab ich vergessen ;)
matze
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 4613
Erhaltene Danke: 24

XP home, prof
Delphi 2009 Prof,
BeitragVerfasst: Fr 20.09.02 19:30 
du könntest das so machen, dass du per Shell Execute die Variable ParamStr(0) aufrufst. Die Variable enthält den kompletten Pfad zu deinem Proggi. Danch schliesst du einfach dein Programm.

_________________
In the beginning was the word.
And the word was content-type: text/plain.
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 21.09.02 08:54 
matze hat folgendes geschrieben:
du könntest das so machen, dass du per Shell Execute die Variable ParamStr(0) aufrufst. Die Variable enthält den kompletten Pfad zu deinem Proggi. Danch schliesst du einfach dein Programm.

Wenn das Programm aber so gestaltet ist, dass es nur einmal gestartet werden kann, hast du mit dem Weg schon mal schlechte Karten. Die neue Instanz wird dann nämlich wahrscheinlich nicht gestartet werden können, weil die alte -die du ja resetten willst!- noch aktiv ist.

Außerdem ist das Beenden und Neustarten ohnehin (optisch) sehr unschön. Was soll der Anwender davon halten, wenn -via Klick auf den Button "Konfiguration zurücksetzen", bspw.- das Programm plötzlich beendet wird und dann neu startet.

Ich halte es für den besseren Weg, wenn man alle Konfigurationsdaten (also, das Lesen, das Speichern und auch das Zurücksetzen der selben) in eigene Routinen auslagert, die man dann einfach nur aufruft.
matze
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 4613
Erhaltene Danke: 24

XP home, prof
Delphi 2009 Prof,
BeitragVerfasst: Sa 21.09.02 11:47 
na ja das wäre auch ne möglichkeit ist aber umständlicher, als meine methode !!!
und optisch unschön.... gut das ist geschmackssche und kommt auch auf der proggi an, wie lange das zum starten braucht.

Aber du hast schon recht, wenn eine routigen zum nur einmal starten eingebaut ist, kannste meine möglichkeit vergessen !

_________________
In the beginning was the word.
And the word was content-type: text/plain.
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 21.09.02 13:33 
Umständlich muss ja nicht immer schlecht sein. :wink:

Es kommt ohnehin erst mal darauf an, welche Einstellungen SpeedyGTD zurücksetzen will. Wenn er zur Laufzeit irgendwelche Komponenteneinstellungen ändert usw., dann wäre ein Neustart vielleicht wirklich besser.
Auf der anderen Seite kann man auch solche Einstellungen in einer eigenen Routine wieder auf den Normalwert zurücksetzen lassen. Darum ziehe ich z.B. Strings, wie diese:
ausblenden Quelltext
1:
Label1.Caption := 'Hallo, Welt!';					

aus dem Programmtext raus und definiere stattdessen eine Konstante. Sollte mich der Text ank**** :wink:, dann ändere ich die Konstante und muss mein Programm nicht zeilenweise absuchen, ob irgendwo noch "Hallo, Welt!" steht.
:)