![]() |
WriteProcessMemory & Float
Hallo DP,
ich hab mal wieder eine kleine Frage zu RAM-Manipulation. Ich kann ja eine Floatdresse auslesen. Ich bekomm dann einen Wert wie 1. oder 0. Nun will ich jetzt den Wert 1. in die Adresse schreiben. Wie mache ich das. Für Byteadressen nutze ich den Code:
Delphi-Quellcode:
So schreibe ich den Wert 2 in die Adresse $599C86. Wie kann ich nur einen Floatwert wie 1. in eine Adresse schreiben.
GetMem(buf,1);
buf^ := Chr(2); WriteProcessMemory(HandleWindow,ptr($599C86),buf,1,temp); FreeMem(buf); Danke schonmal. |
AW: WriteProcessMemory & Float
Es gibt da diese tolle Webseite. MSDN heißt die. Dort kann man dann nach Win32-Funktionen wie
![]() Wenn man dann nur mal auf die Parameternamen guckt und sein Englisch oder ein Wörterbuch bemüht, kommen dann ganz lustige Zusammenhänge raus.
Code:
So und dann gucken wir mal auf deinen Code:
hProcess == Prozeßhandle
lpBaseAddress == Basisadresse lpBuffer == Puffer nSize == Größe (des Puffers in Byte) lpNumberOfBytesWritten == geschriebene Bytes
Delphi-Quellcode:
Hmm, seltsam. HandleWindow? Sollte das etwa ein Fensterhandle sein? Das wäre natürlich falsch, denn dort muß ein Prozeßhandle rein (
WriteProcessMemory(HandleWindow,ptr($599C86),buf,1,temp);
![]() Hmm, buf ... klingt nach nem Puffer, oder? Und oben haste 1 Byte alloziert. Wenn wir also mehr als ein Byte schreiben wollen, nehmen wir? ... na? Genau! Wir nehmen sizeof(TypName) Bytes. Also für einen Float wäre das dann je nach Zieltyp sizeof(Real) oder sizeof(Extended) usw. ... Und das tolle an temp ist, daß man ihm nach Aufruf der Funktion entnehmen kann wieviele Bytes erfolgreich geschrieben wurden. Zusätzlich zu ![]() Alles in allem würde ich sagen, daß du deine Frage mit einer kurzen Webrecherche auch selber hättest lösen können. Wenn eine kurze Webrecherche nicht gereicht hätte, dann hapert's wohl am Grundwissen. Und wie sagte der ![]() Lernen! Lernen! Lernen! :zwinker: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:45 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