DELETE
Verfasst: 07.12.2014 18:14
~ DELETE ~
JaCodeCommander hat geschrieben:In PB möglich?
Code: Alles auswählen
Structure didum
einLong.l
einString$
*einPointer
*lenPointer
EndStructure
Structure StreamDidum
einLong.l
einString.l
einPointer.l
lenPointer.l
EndStructure
Procedure StreamTheStructure(*self.didum)
lenString = StringByteLength(*self\einString$) + 2
size = SizeOf(StreamDidum) + lenString + *self\lenPointer
*output.StreamDidum = AllocateMemory(size)
*output\einLong = *self\einLong
*output\einString = SizeOf(StreamDidum)
*output\einPointer = SizeOf(StreamDidum) + lenString
*output\lenPointer = *self\lenPointer
PokeS(*output + SizeOf(StreamDidum), *self\einString$)
If *self\lenPointer
CopyMemory(*self\einPointer, *output + SizeOf(StreamDidum) + lenString, *self\lenPointer)
EndIf
ProcedureReturn *output
EndProcedure
*self.didum = AllocateMemory(SizeOf(didum))
*self\einLong = 2342
*self\einString$ = "Hallo Welt!"
*self\einPointer = AllocateMemory(8)
RandomData(*self\einPointer, 8)
Debug RSet(Hex(PeekQ(*self\einPointer)), 16, "0")
*self\lenPointer = 8
Debug "== Stream =="
*this.StreamDidum = StreamTheStructure(*self.didum)
Debug *this\einLong
Debug PeekS(*this + *this\einString)
Debug RSet(Hex(PeekQ(*this + *this\einPointer)), 16, "0")
Debug *this\lenPointer
Debug MemorySize(*this)