Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Typecast (https://www.delphipraxis.net/74744-typecast.html)

hazelnoot 8. Aug 2006 07:06


Typecast
 
hi!

ich habe eine kleine frage ich hoffe dass dieser thread dafuer in ordnung ist!

ich habe in einer konsolenanwaendung ein windowhandle nachprogrammiert und da wird bei jedem event eben folgende methode aufgerufen:

Delphi-Quellcode:
procedure TTestThread.WndProc(var msg : TMessage);
begin
end;
dieses msg sollte einen text enthalten! wie kann ich auf diesen text zugreifen?

danke mfg hazelnoot!

RavenIV 8. Aug 2006 07:21

Re: Typecast
 
du brauchst keinen Typecast, Du musst nur auf den richtigen Teil der Message zugreifen.
Delphi-Quellcode:
myText := msg.Text;
könnte vielleicht helfen...

hazelnoot 8. Aug 2006 07:23

Re: Typecast
 
hi!

TMessage hat leider keine eigenschaft/methode text!

ach ja was in message drinnen sein soll ist ein "TStrings"!

danke fuer die schnelle antwort
mfg hazelnoot

xaromz 8. Aug 2006 08:39

Re: Typecast
 
Hallo,

in einer Message kann so ziemlich alles drinstecken. TMessage besteht ja eigentlich nur aus Message-ID + zwei Integer. Was die Integer repräsentieren (z. B. einen Pointer auf einen String, ein Objekt, einen Pointer auf ein Record...), das hängt ganz von der Message ab. In Deinem Fall wäre es also gut, zu wissen, wie die Message abgeschickt wird. Analog kann man dann nämlich die Message dekodieren.
Wenn in einer Message TStrings drin sein sollten, wirst Du aber ein großes Problem bekommen, falls Du über Prozessgrenzen hinweg arbeitest. Du hast dann nämlich einen Pointer, der in Deinem Adressbereich nicht gültig ist bzw. irgendwo hinzeigt.

Gruß
xaromz


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