Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi nochmal: Programm mit Classname und Title beenden! (https://www.delphipraxis.net/8111-nochmal-programm-mit-classname-und-title-beenden.html)

Trouble_Maker 28. Aug 2003 20:47


nochmal: Programm mit Classname und Title beenden!
 
Hiho ...
so auch wenn dies hier schon wirklich oft im Forum steht, bekomm ich es einfach nicht gebacken, dass ich ein bestimmtes Programm schließe.

z.B. folgender Code:
Delphi-Quellcode:
SendMessage(FindWindow('I','about:blank - Microsoft Internet Explorer'), WM_QUIT, 0, 0);
wieso funktioniert das nicht.
den Code habe ich hier aus dem Forum.
Um den Klassenname (Classname) (hier das I) herauszubekommen benutze ich das Tool EDA.

Was mache ich falsch ?!?
ich versteh das nicht ...

danke

Trouble_Maker

CalganX 28. Aug 2003 20:50

Re: nochmal: Programm mit Classname und Title beenden!
 
Schreib statt 'I' mal nil. Das sollte was bringen...

Chris

Trouble_Maker 28. Aug 2003 20:54

Re: nochmal: Programm mit Classname und Title beenden!
 
nope ...

passiert nix !!!

Hab Win98 SE also wegen Rechten und so kanns nicht sein!


cu Trouble_Maker

Luckie 28. Aug 2003 21:01

Re: nochmal: Programm mit Classname und Title beenden!
 
Kann ich bestätigen.

Trouble_Maker 28. Aug 2003 21:03

Re: nochmal: Programm mit Classname und Title beenden!
 
Zitat:

Zitat von Luckie
Kann ich bestätigen.

was kannst du bestätigen ?!?

dass es nicht an den Rechten liegen soll, oder das mit dem "nil" ?!?

wo ist denn mein Fehler ?


cu Trouble_Maker

Luckie 28. Aug 2003 21:05

Re: nochmal: Programm mit Classname und Title beenden!
 
Dass es auch mit nil nicht geht.

CalganX 28. Aug 2003 21:07

Re: nochmal: Programm mit Classname und Title beenden!
 
Nimm weiterhin nil, aber nimm statt WM_QUIT WM_CLOSE. Funktioniert bei mir.

Chris

PS: Denk daran, dass die Titelzeile dann auch wirklich "about:blank - Microsoft Internet Explorer" sein muss! :!:

CalganX 28. Aug 2003 21:11

Re: nochmal: Programm mit Classname und Title beenden!
 
Ansonsten mach es mal so:
Delphi-Quellcode:
hWnd := FindWindow(nil, 'about:blank - Microsoft Internet Explorer');
if hWnd <> nil then
  SendMessage(hWnd, WM_SYSCOMMAND, SC_CLOSE, 0)
else
  ShowMessage('Window does not exist.');
Chris

Trouble_Maker 28. Aug 2003 21:15

Re: nochmal: Programm mit Classname und Title beenden!
 
Hiho ...

hmm sehr komisch!

Habs jetzt nochmal ausprobiert.
Also mit CDex und mit KillProcess hat der Code funktioniert! Aber nicht mit dem about:blank . Ist doch bisl komisch oder ?!?
Außerdem funktioniert es auch nicht auf Google.de und auf Chip.de!

Liegt das am Internet Explorer ?!?

Trotzdem erstmal danke. Will ja eh kein IE-Fenster schließen!


cu Trouble_Maker

CalganX 28. Aug 2003 21:19

Re: nochmal: Programm mit Classname und Title beenden!
 
Okay, mein Fehler statt nil 0, wenn hWnd ein DWORD bzw. THandle ist.

Aber mein zu Letzt geposteter Source funktioniert mit allem wunderbar!

Chris


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:07 Uhr.
Seite 1 von 2  1 2      

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