![]() |
Send Message an einen Dienst
Hallo an alle
ich habe einen Code hier gefunden
Delphi-Quellcode:
Das klappt ohne Probleme wenn ich eine Sichtbare Application habe.
dwMessagenew := RegisterWindowMessage(Progguid);
HAPPLICATION := 0; HMAINFORM := 0; repeat HAPPLICATION := FindWindowex(0,HAPPLICATION,'TApplication', progname); until HAPPLICATION <> Application.Handle; if HAPPLICATION <> 0 then begin Windows.ShowWindow(HAPPLICATION, SW_Normal); Windows.BringWindowToTop(HAPPLICATION); Windows.SetForegroundWindow(HAPPLICATION); HMAINFORM := FindWindowEx(0,0,mainform, nil); if (HMAINFORM <> 0) then begin AtomSend := GlobalAddAtom(MyMessage); SendMessage(HMAINFORM,dwMessagenew,0,Atomsend); end; end; Klappen tut das leider nicht wenn die Applikation ein Dienst ist oder die Showmainform = false gesetzt wurde. Gibt es eine andere Möglichkeit ein Sendmessage auszuführen an eine bestimmte Applikation ? |
Re: Send Message an einen Dienst
Da fehlt mal wieder das Grundlagenwissen zu Diensten. Dienste laufen in einer anderen Windows Station und haben somit erstmal keinen Zugriff auf die interaktive Windows Station und deren Desktops. Nutze andere Möglichkeiten der Interprozesskommunikation, wie memoryMappedFiles, NamedPipes, Mailsolts oder was es sonst noch so gibt.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:33 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