AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Spezielle Message, wenn Taskmanager Programm beendet

Spezielle Message, wenn Taskmanager Programm beendet

Ein Thema von Ines · begonnen am 20. Okt 2010 · letzter Beitrag vom 22. Okt 2010
Antwort Antwort
Seite 2 von 4     12 34   
Ines

Registriert seit: 22. Aug 2006
Ort: Augsburg
96 Beiträge
 
Delphi 2009 Enterprise
 
#11

AW: Spezielle Message, wenn Taskmanager Programm beendet

  Alt 21. Okt 2010, 07:43
Hallo und guten Morgen!

Die Frage ist, was möchtest du erreichen?

Soll die Datei unbedingt gelöscht werden oder die Datenbank-Verbindung getrennt.
Die Anwendung selber kann nichts mehr machen (das ist ja jetzt klar geworden).
Ich erstellte beim Programmstart ein ini-File. Wird das Programm erneut gestartet und das ini-File besteht noch, dann erhält der Nutzer den Hinweis, seinen Rechner zu booten, außerdem wird das Programm nicht ausgeführt.
Momentan habe ich das Löschen des ini-Files im FormClose untergebracht. Ich ändere mein Programm dahingehend, daß das ini-File beim Klicken auf "Programm beenden" gelöscht wird. Außerdem werde ich den "X"-Button des Formulars unterdrücken. Damit dürfte ich dann auf dem richtigen Weg sein.

Der Nutzer soll weiterhin die Möglichkeit haben ein Programm mit dem Taskmanager zu beenden. Allerdings soll er dann anschließend den Rechner booten.

Viele Grüße
Ines
Ines
  Mit Zitat antworten Zitat
youuu

Registriert seit: 2. Sep 2008
Ort: Kleve
822 Beiträge
 
Delphi 2010 Professional
 
#12

AW: Spezielle Message, wenn Taskmanager Programm beendet

  Alt 21. Okt 2010, 08:38
Außerdem werde ich den "X"-Button des Formulars unterdrücken

Wieso? Das OnClose Ereignis reagiert doch beim Beenden des programms, sei es durch "X"-Button oder sonst wie, (ausgenommen per Taskmanager "Prozess beenden")

Falls das schon geklärt sein sollte, Entschuldige ich ich hab nicht alles gelesen
Steven
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#13

AW: Spezielle Message, wenn Taskmanager Programm beendet

  Alt 21. Okt 2010, 09:13
Man sollte aber vorher noch prüfen ob das Programm noch aktiv ist, sonst startet der User das Programm doppelt und er bekommt den Hinweis, doch bitte den Rechner zu booten.

Was bringt der Neustart des Rechners für die Anwendung?
Also ist es wirklich notwendig den User damit zu nerven?
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Ines

Registriert seit: 22. Aug 2006
Ort: Augsburg
96 Beiträge
 
Delphi 2009 Enterprise
 
#14

AW: Spezielle Message, wenn Taskmanager Programm beendet

  Alt 21. Okt 2010, 10:00
Wieso? Das OnClose Ereignis reagiert doch beim Beenden des programms, sei es durch "X"-Button oder sonst wie, (ausgenommen per Taskmanager "Prozess beenden")
Das OnClose-Ereignis wird auch ausgeführt bei Taskmanager - Task beenden.

Was bringt der Neustart des Rechners für die Anwendung?
Also ist es wirklich notwendig den User damit zu nerven?
Aus der VMS-Process-ID (wird beim PC-Start am Server generiert) wird für die Datenbank (und andere Programme) ein interner Account gebildet. Startet der Nutzer eine Abfrage, die ihm zulange dauert und er beendet das Delphi-Programm, so wird dieser interne Account nicht gelöscht und die Abfrage läuft am Server munter weiter.
Bootet der Nutzer allerdings seinen PC, so meldet der Server allen Programmen (und damit auch der Datenbank), daß dieser Nutzer nicht mehr besteht. Abfragen, die noch durchgeführt werden, werden dann von der Datenbank sofort verworfen.
Ich will den Nutzer nicht mehr als nötig nerven. Aber ich reagiere auf die Frage "Warum dauern Abfragen heute so lange" auch allmählich....

Viele Grüße
Ines
Ines
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

AW: Spezielle Message, wenn Taskmanager Programm beendet

  Alt 21. Okt 2010, 10:19
Dann wäre es doch einfacher dem Server selber zusagen "verwerfe bitte diesen Benutzer", wenn das Programm gestartet wird und vorher nicht korrekt beendet wurde.

Oder sag dem Server er soll alles verwerfen, welches zu alt ist.
Miniaturansicht angehängter Grafiken
windows-mausposition.jpeg  
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (21. Okt 2010 um 10:23 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#16

AW: Spezielle Message, wenn Taskmanager Programm beendet

  Alt 21. Okt 2010, 10:37
Ich weiß ja nicht wie deine Benutzer an dem Rechner arbeiten, aber wenn das Datenbank-Programm ein essentielles Programm ist, was er unbedingt braucht und er noch andere wichtige Programme auf hat, dann würde mich als Benutzer das neubooten tierisch nerven, weil ich dann alle Programme und Dateien neu starten und öffnen müsste. Und bis ich dann wieder da bin, wo ich vorher war dürfte einige Zeit vergehen und ich wäre, wie schon gesagt, tierisch genervt.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Ines

Registriert seit: 22. Aug 2006
Ort: Augsburg
96 Beiträge
 
Delphi 2009 Enterprise
 
#17

AW: Spezielle Message, wenn Taskmanager Programm beendet

  Alt 21. Okt 2010, 10:58
Dann wäre es doch einfacher dem Server selber zusagen "verwerfe bitte diesen Benutzer", wenn das Programm gestartet wird und vorher nicht korrekt beendet wurde.
Oder sag dem Server er soll alles verwerfen, welches zu alt ist.
Funktioniert beides nicht, da ich weder die interne Process-ID kenne noch Abfragen von anderen Nutzern stoppen kann (und will) die ein Zeitlimit überschritten haben.

Ich weiß ja nicht wie deine Benutzer an dem Rechner arbeiten.. Und bis ich dann wieder da bin, wo ich vorher war dürfte einige Zeit vergehen und ich wäre, wie schon gesagt, tierisch genervt.
Deshalb suche ich ja nach einer Lösung. Ich lösche mein ini-File, wenn der Nutzer auf "Programm beenden" klickt. Wird das Programm über "Task beenden" beendet, dann erhält er einen Hinweis. Beim Neustart des Programms und vorhandenem ini-File wird das Programm beendet (andere Programme können weiterhin gestartet werden) und der Nutzer hat die Möglichkeit, zu einem späteren, (besseren?) Moment seinen Rechner zu booten.

Ich bin ganz Deiner Meinung: - Booten nervt, - Wiederholtes Aufrufen und Einloggen in ein Programm nervt, allerdings lange Wartezeiten nerven auch.
Und eine einmal abgeschickte Abfrage an den Server kann ich nicht "zurückholen".

Ines
Ines
  Mit Zitat antworten Zitat
youuu

Registriert seit: 2. Sep 2008
Ort: Kleve
822 Beiträge
 
Delphi 2010 Professional
 
#18

AW: Spezielle Message, wenn Taskmanager Programm beendet

  Alt 21. Okt 2010, 11:15
Was sind denn das für Abfragen die so extrem lange dauern sollen?
Über wieviel Datensätze reden wir die aufgelistet werden bei einer Abfrage?

Vielleicht kann man ja dort auch Optimierungen vorschlagen, das der "Kunde" gar nicht erst in Versucng kommt, dein Progamm einfach zu beenden?
Steven
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#19

AW: Spezielle Message, wenn Taskmanager Programm beendet

  Alt 21. Okt 2010, 11:20
Schreib doch die ProzessID mit in die Ini-Datei. Wenn das Programm neu gestartet wird, ist die ProzessID anders und...

Jetzt habe ich den Faden verloren, was ich für eine Idee hatte.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
youuu

Registriert seit: 2. Sep 2008
Ort: Kleve
822 Beiträge
 
Delphi 2010 Professional
 
#20

AW: Spezielle Message, wenn Taskmanager Programm beendet

  Alt 21. Okt 2010, 11:22
Schreib doch die ProzessID mit in die Ini-Datei. Wenn das Programm neu gestartet wird, ist die ProzessID anders und...

Jetzt habe ich den Faden verloren, was ich für eine Idee hatte.
WOlltest du etwa sagen: Ist die ProzessID anderst, soll die alte ProzessID beendet werden und die neue gestartet?
Steven
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 22:40 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