Entwickler-Ecke
Windows API - Inhalt übergeben
SatBL - Fr 10.10.03 11:51
Titel: Inhalt übergeben
Hallo zusammen,
ich bräuchte mal einen kleinen experten Tip. Ich versuche schon seit geraumer Zeit den Inhalt von 'fd' an den 'SendBuffer' zu übergeben.
Hier die definitionen.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| Type TFileDaten = Record Word_1 : word; Word_2 : word; Small_1 : Smallint; Small_2 : Smallint; end;
var fd: TFileDaten; SendBuffer: array[1..8] of Char; |
Wie kann ich dieses in möglichst einfacher Form tun, ich meine
nicht z.B.:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| SendBuffer[1] := char(fd.Word_1 shr 8); SendBuffer[2] := char(fd.Word_1); SendBuffer[3] := char(fd.Word_2 shr 8); SendBuffer[4] := char(fd.Word_2); SendBuffer[5] := char(fd.Small_1 shr 8); SendBuffer[6] := char(fd.Small_1); SendBuffer[7] := char(fd.Small_2 shr 8); SendBuffer[8] := char(fd.Small_2); |
es müsste doch eine Möglichkeit geben das mit einer Schleife oder Zeiger zu bewältigen, oder liege ich da falsch.
Ich bekomme es nicht hin, bin zu blöde...
Kann mir jemand helfen, danke schon mal...
Mfg
Moderiert von
Klabautermann: Delphi-Tags hinzugefügt.
Motzi - Fr 10.10.03 12:17
Ganz easy! ;)
Delphi-Quelltext
1:
| CopyMemory(@SendBuffer, @fd, SizeOf(TFileDate); |
SatBL - Fr 10.10.03 12:37
Ja super, das ist ja einfach, danke werde ich gleich mal probieren.
SatBL - Fr 10.10.03 13:04
Hallo Motzi,
der Befehl funzt, er hat nur einen kleinen haken, er verdreht mir bei dem Word das LOW und HIGH Byte, d.h. es steht immer LHLHLHLH im SendBuffer, aber ich bräuchte HLHLHLHL.
Hast Du noch so eine simple Idee ??? :wink:
Motzi - Fr 10.10.03 13:23
Das liegt nicht am Befehl, sondern an der internen Speicherung, die Words liegen nunmal so im Speicher! ;)
Aber du kannst die Word alle "swapen":
Delphi-Quelltext
1: 2: 3: 4:
| procedure SwapWord(var w: Word); begin w := ((w and $00FF) shl 8) or ((w shr 8) and $00FF) end; |
Hoffe das stimmt so (is nicht getestet) ;)
SatBL - Fr 10.10.03 13:34
Jeep, haut hin, danke...
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!