AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Neustarten

Ein Thema von chicky · begonnen am 11. Aug 2009 · letzter Beitrag vom 11. Aug 2009
Antwort Antwort
chicky

Registriert seit: 11. Aug 2009
40 Beiträge
 
#1

Neustarten

  Alt 11. Aug 2009, 10:13
Gibt es in Delphi die Mgl. (z.B. mit WatchDogTimer o.ä.), dass sich ein Programm selbst neustartet, wenn es z.B. aufgehängt ist?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Neustarten

  Alt 11. Aug 2009, 10:16
Wenn ein Programm hängt, kriegt es das ja gar nicht mit, eben weil es hängt. Wie soll es sich da neu starten?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Neustarten

  Alt 11. Aug 2009, 10:17
Nein. Eine Anwendung kann sich ohne eine andere Anwendung nicht neustarten, da sie ja zum neustarten erstmal geschlossen wird und sich dann natürlich dann nicht wieder selber ausführen kann. Aber du könntest erst die Anwendung nochmal starten und dann die alte Instanz schließen:

Delphi-Quellcode:
if Integer(ShellExecute(Form1.Handle, 'open', PChar(ExtractFilePath(Application.ExeName)+'zweite.exe'), nil, nil, SW_SHOWNORMAL))>32 then
Application.Terminate;
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.115 Beiträge
 
Delphi 12 Athens
 
#4

Re: Neustarten

  Alt 11. Aug 2009, 10:22
es kommt darauf an, wie es hängt ...

man könnte einen Thread erstellen, welcher die Funktion überwacht,
(hier mußt aber sichergestellt sein, daß der Wachtread nicht durch irgendwas der restlichen Anwendung blokiert werden kann)
dieser startet eine neue Instant und Killt danach den eigenen Thread
(oder über einen Parameter wird der anderen Instanz mitgeteilt, daß diese den die alte Instanz killt)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
chicky

Registriert seit: 11. Aug 2009
40 Beiträge
 
#5

Re: Neustarten

  Alt 11. Aug 2009, 10:26
Ich werde Larsi´s Methode mal probieren. Danke ersteinmal
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
(CodeLib-Manager)

Registriert seit: 27. Nov 2008
Ort: Delmenhorst
2.379 Beiträge
 
#6

Re: Neustarten

  Alt 11. Aug 2009, 10:28
WatchDog klingt doch sehr nach µC. Das würde, auf den PC übertragen, bedeuten, dass sich das komplette System neustarten müsste. Das macht Windows tatsächlich, allerdings nur nach BSOD, solange an der Standardeinstellung nichts gedreht wurde.

Die Idee mit dem Thread im Hintergrund klingt gar nicht mal so doof...
米斯蘭迪爾
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#7

Re: Neustarten

  Alt 11. Aug 2009, 12:03
Dann werfe ich mal den Link in den Raum: http://msdn.microsoft.com/en-us/library/cc303704.aspx und den da: http://msdn.microsoft.com/en-us/libr...47(VS.85).aspx

Und strafe euch damit lügen, denn: Es geht doch

Zumindest ab Windows Vista/Server2008 und höher
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
(CodeLib-Manager)

Registriert seit: 27. Nov 2008
Ort: Delmenhorst
2.379 Beiträge
 
#8

Re: Neustarten

  Alt 11. Aug 2009, 12:11
Nun ja...
米斯蘭迪爾
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz