![]() |
Pixelfarbe aus anderem Programm auslesen
Wie kann man aus einem anderen Programm die Farbe eines Pixels seiner Oberfläche auslesen. Hintergrund ist, das andere Programm hat eine Statusanzeige, welche rot oder grün ist und ich möchte gerne protokollieren, wann und wie oft sie grün oder rot ist.
|
Re: Pixelfarbe aus anderem Programm auslesen
Hallo,
ich glaube du meinst sowas hier:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var CurPos: TPoint; lDC: HDC; begin //sleep(2000); lDC:= GetDC(0); if lDC> 0 then try GetCursorPos(CurPos);//Beispiel Color:= GetPixel(lDC, CurPos.X, CurPos.Y); finally ReleaseDC(0, lDC); end; end; |
Re: Pixelfarbe aus anderem Programm auslesen
Zitat:
|
Re: Pixelfarbe aus anderem Programm auslesen
Hi,
wenn du das Handle des Fensters kennst, dann geht es auch so:
Delphi-Quellcode:
Oder du musst das Handle mit EnumWindows herausfinden.
procedure TForm1.Button1Click(Sender: TObject);
var CurPos: TPoint; lDC: HDC; h: HWND; begin h:= findwindow();//oder auch was anderes SetForegroundWindow(h); lDC:= GetDC(h); if lDC> 0 then try Color:= GetPixel(lDC, 100, 120); finally ReleaseDC(h, lDC); end; end; EDIT: Ich glaube das Fenster muss sich trotzdem im Vordergrund befinden. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:42 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