@Luckie:
Hauptstream.Write(IconStream,IconStream.Size)
IconStream klingt nach Stream, also nach Objektvariable
@schwa226:
diese Variable ist 4 Byte ( SizeOf(TObject) ) groß.
Was ist IconStream für ein Stream?
bei TMemoryStream kommt man direkt an den Speicher und bei anderen Streams mußt du diesen erst in einen Puffer kopieren, bevor man den Inhalt an .Write übergeben.
oder du nimmst eine andere Send-Methode, welche Streams versenden kann.
Du hattest quasi nur Glück, daß alles, was über 4 Byte groß war, überhaupt "funktionierte".