![]() |
SendNotifyMessage und Admin Mode
Ich habe ein weiteres Problem mit zwei kommunizierenden Programmen, wenn eines im Admin-Mode läuft (ja, es gibt Anwender die das aus welchen Gründen auch immer tun).
Das erste Programm (C++) sendet an das zweite Kommandos per SendNotifyMessage (non-blocking mit anschliessendem Timeout):
Code:
Das zweite Programm verwendet dazu dann einen Handler mit
SendNotifyMessage(hSendMessageToClient,WM_COMMAND,0,kWM_COMMAND);
waitResult = WaitForSingleObject(hCommand1Done,250);
Delphi-Quellcode:
Das klappt alles. Prog2 antwortet innerhalb des TimeOuts und Prog1 läuft korrekt weiter.
const
WM_COMMAND = WM_USER + 77; ... procedure CommandHandler(var Msg: TMessage); message WM_COMMAND1; ... procedure TMainForm.CommandHandler(var Msg: TMessage); begin case Msg.LParamLo of kWM_COMMAND1: begin ProcessCommand; SetEvent(hCommand1Done); end; ... end; end; Wenn nun aber das Prog2 im Admin-Mode läuft, dann wird der CommandHandler nicht mehr aufgerufen, bekommt also anscheinend die Message nicht mehr. Demzufolge erfolgt auch keine Rückmeldung und das Prog1 geht in den Fehlermodus. Meine simple Frage hierzu: warum stopt der Admin-Mode das Messaging und was dagegen tun? Grüsse Uli |
AW: SendNotifyMessage und Admin Mode
Zitat:
Zitat:
Du wirst dein Programm umbauen mussen damit andere (legitime) Kommunikationsmöglichkeiten verwendet werden. |
AW: SendNotifyMessage und Admin Mode
Danke. Einleuchtend. Auf Basis der Antwort habe ich denn auch was dazu gefunden, Stichwort
![]() Ich muss es auch nicht unbedingt ändern. Eine sinnvolle Erklärung für den Anwender reicht auch. Das Programm ist nicht für den Admin-Mode vorgesehen, er wird auch nicht benötigt. Grüsse Uli PS: theoretisch/praktisch geht es wohl mit ![]() |
AW: SendNotifyMessage und Admin Mode
Ich hab vergessen wie die API heißt, aber man kann Messages freischalten, damit sie nicht gesperrt werden. (wird z.B. für Copy&Paste und Drag&Drop gern mal freigegeben)
[edit] Vor dem Mittag vergessen abzusenden und nun steht's schon da. ChangeWindowMessageFilter |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:08 Uhr. |
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