Wenn das Bitmap wirklich ungültig sein sollte (was eine ganz andere
Exception ist als eine
Access Violation(!!)), dann kann folgendes sein:
1. Das Bild wird falsch beim Sender in den Stream gespeichert (welcher später versendet wird)
2. Das Bild ist einfach kein Bitmap
3. Das Bild wird zu früh geladen
4. Es werden noch andere Daten dazwischen gesendet (wie man dies auch immer hinbekommen sollte)
Aber um das mal zu untersuchen, wäre es zu empfehlen sich die empfangenen Daten anzuschauen. Also speicher mal den MemoryStream vor dem Anzeigen in dem Image (SaveToFile()) und dann schau mal, ob die Datei vom Inhalt die gleiche ist wie die gesendete...