Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi handle, handle...., Programm beenden, ich check es nicht (https://www.delphipraxis.net/11431-handle-handle-programm-beenden-ich-check-es-nicht.html)

Stanlay Hanks 8. Dez 2003 20:22

Re: handle, handle...., Programm beenden, ich check es nicht
 
War eigentlich nur so dahin gesagt :wink:
Ich meine beenden. Offen gesagt, dass das mit der Firewall nicht geht, hab ich überlesen :oops:
Danke für die Berichigung.

Man liest sich, Stanlay :hi:

Chewie 8. Dez 2003 20:24

Re: handle, handle...., Programm beenden, ich check es nicht
 
Dass es keine Lösung gibt, ist zuviel gesagt. Es stellt sich nur die Frage nach dem Aufwand.

Spontan fallen mir folgende Möglichkeiten ein:
  • Den Prozess via TerminateProcess abschießen: Klar, hier wird das Programm natürlich nicht "ordnungsgemäß beendet"
  • Einen Snapshot machen und die Fensterliste abklappern und kucken, welcher Fenstername am ehesten das Hauptfenster sein könnte
  • Einen Snapshot machen, die Fensterliste abklappern und jedes(!!) Fenster schließen: ziemlich brutal, hier kann ähnliches passieren wie bei (1)
  • Eine DLL in den fremden Prozess injezieren, die ExitProcess aufruft und somit eine "sanfte" Termininierung herbeiführt. Oder anders gesagt: Mit Kanonen auf Spatzen geschossen. Aber gut, man kann sie damit ja auch treffen ;-)

Stanlay Hanks 8. Dez 2003 20:27

Re: handle, handle...., Programm beenden, ich check es nicht
 
...oder noch den ganzen Mast mit umballern :mrgreen:

Aber im Ernst: Da ich mich mit sowas nicht auskenne, würde mich das theoretische an diesem

Delphi-Quellcode:
Eine DLL in den fremden Prozess injezieren, die ExitProcess aufruft und somit eine "sanfte" Termininierung herbeiführt.
doch recht interessieren. Hast du da vielleicht son bisschen Hintergrundwissen parat? Wäre interessant.

Man liest sich, Stanlay :hi:

Walter vdV 8. Dez 2003 20:44

Re: handle, handle...., Programm beenden, ich check es nicht
 
Also, dass mit dem Verweis auf den Snapshoot war schon mal gut, sauberer Code, Danke. Mit den Modulen habe ich auch schon rumexperimentiert. Wichtig scheint mir auch noch die Reihenfolge zu sein beim Beenden. Ich glaube ich bin einfach nur zu blöd, die API richtig zu kapieren. Vielleicht habe ich über Weihnachten noch mal Zeit etwas zu probieren. Falls irgendjemand zu einem Ergebnis kommt, bitte posten, gilt auch für mich. Übrigens mit dem Injizieren gibt es hier im Forum eine ellenlange Diskussien. Aber die habe ich nun wirklich nicht kapiert. Gruss Walter.

Flogo 9. Dez 2003 06:29

Re: handle, handle...., Programm beenden, ich check es nicht
 
Ginge denn theoretisch auch eine Simulation des richtigen Beendens?
Also
  • sende einen rechtsklick an das TNA Icon
    Wähle beenden aus der Liste
    sende tab-enter an die sicherheitsfrage (von nein auf ja und dann bestätigen)

Wenn ja, dann wie simuliert man einen Klick auf das TNA Icon

cu
Flo


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:02 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz