![]() |
Re: fremdes RichEdit auslesen?
Du könntest dir die Länge vom letzten Abruf merken (WM_GETTEXTLENGTH) und nur dann den Text erneut abfragen, wenn sich die Länge geändert hat. Bringt vielleicht nicht viel, aber immerhin etwas.
Außerdem könntest du dir so jeweils nur die Änderungen geben lassen. Die folgende Funktion aktualisiert den Parameter oldlen jeweils so, dass beim nächsten Aufruf (mit derselben Variablen) nur der neu hinzugekommene Text zurückgegeben wird:
Delphi-Quellcode:
function GetNewForeignWindowText(wnd: HWND; var oldlen: Integer): string;
var len: Integer; buf: string; begin len := SendMessage(wnd, WM_GETTEXTLENGTH, 0, 0); if len > oldlen then begin SetLength(buf, len); SendMessage(wnd, WM_GETTEXT, len + 1, Integer(@buf[1])); SetString(Result, @buf[oldlen + 1], len - oldlen); oldlen := len; end else Result := ''; end; |
Re: fremdes RichEdit auslesen?
Zitat:
|
Re: fremdes RichEdit auslesen?
sry das ich 16 Monate später deinen Thread wiederbelebt habe und nun nicht ganz dein gewünschtes Ergebnis rauskommt. Oder hast du viell. in dieser langen Zeit eine Lösung entwickelt?
|
Re: fremdes RichEdit auslesen?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:34 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