2. ist RawByteString = PChar und
Da wäre ich mir jetzt nicht so sicher! PChar ist ein Pointer auf einen 2-Byte Char, während RawByteString aus 1-Byte Chars besteht (daher der Name). Man muss halt dann selbst wissen, welches Encoding in den Bytes steckt.
Ich bin aber überzeugt, daß es bessere und vor allem stabilere Lösungen gibt.