Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi [Mutex] Anderem Programm etwas mitteilen (https://www.delphipraxis.net/86397-%5Bmutex%5D-anderem-programm-etwas-mitteilen.html)

xZise 13. Feb 2007 16:34


[Mutex] Anderem Programm etwas mitteilen
 
:hi:

Ich benutzte dieses Mutex und es funktioniert auch wunderbar, jetzt wäre es aber auch nett, wenn sich das erste Programm sich in den Vordergrund holt...
Wie könnte man das Realisieren?

Die Muhkuh 13. Feb 2007 16:38

Re: [Mutex] Anderem Programm etwas mitteilen
 
Über FindWindow das Fensterhandle holen und per SetWindow (weiß nicht genau, wie die funktion heißt, aber DP-Suche hilft :) ) das Fenster in den Vordergrund schicken.

xZise 13. Feb 2007 16:43

Re: [Mutex] Anderem Programm etwas mitteilen
 
Die Suche ist da leider nicht sehr Ergiebig :P
Die ergebnisse :(
Eine Frage zum FindWindow: Wie finde ich den 1. Parameter raus? Ist das der "Mutexname"? Das hat sich jetzt erledigt :P

xZise hat folgendes hinzugefügt:
So... Ich habe folgendes gefunden. Das Problem ist nur, dass ich es nicht schaffe das Fenster entweder gar nicht "TOPMOST" zu setzen, oder den Modus wieder abzuschalten...



xZise hat folgendes hinzugefügt:
So... Mein 3. Edit:
Okay ;) Ich habe den Modus wieder auf "HWND_NOTOPMOST" gesetzt. Problem ist jetzt:
Das "alte" Fenster (also meist der Explorer) ist weiterhin markiert. Ist es möglich das Fenster zu "markieren"?

xZise 14. Feb 2007 16:33

Re: [Mutex] Anderem Programm etwas mitteilen
 
Ich wäre über Hilfe dankbar :pale:

DGL-luke 14. Feb 2007 16:40

Re: [Mutex] Anderem Programm etwas mitteilen
 
hmm... MSDN-Library durchsuchenSetFocus MSDN-Library durchsuchenSetForeGroundWindow MSDN-Library durchsuchenSetActiveWindow

Aber ich glaube, wenn du nicht SetForeGroundWIndow verwendest, musst du dich an das Fenster erst selbst drankleben. (Steht in den MSDN-Artikeln jeweils drin)

xZise 14. Feb 2007 16:42

Re: [Mutex] Anderem Programm etwas mitteilen
 
Zitat:

Zitat von DGL-luke

Ah... Danke!

Zitat:

Zitat von DGL-luke
Aber ich glaube, wenn du nicht SetForeGroundWIndow verwendest, musst du dich an das Fenster erst selbst drankleben. (Steht in den MSDN-Artikeln jeweils drin)

Öhm.... kA was du meinst, aber die Funktion macht genau das was ich vorhatte!

DGL-luke 14. Feb 2007 16:46

Re: [Mutex] Anderem Programm etwas mitteilen
 
Na also.

Was ich meinte: Sowohl SetFocus als auch SetActiveWindow können nur auf eigene Fenster angewendet werden. D.h., du musst entweder deinem fenster die entsprechende message schicken, damit die messagebehandlung das fenster dann selbst nach vrone schiebt, oder deinen eigenen thread an das window drankleben.

xZise 14. Feb 2007 16:54

Re: [Mutex] Anderem Programm etwas mitteilen
 
Ah okay ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:34 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