Parameter não é um erro válido ao criar imagem de byte [] em c #
Estou tentando converter umbyte[]
paraBitmap
em c #. A seguir está o código:
MemoryStream ms = new MemoryStream(b);
Bitmap bmp = new Bitmap(ms);
Mostra o erroParameter is not valid
ao criar oBitmap
.
byte[] b
vem de um fluxo de rede.
Mas quando eu escrevo este byte [] em um arquivo e abro esse arquivo em qualquer visualizador de imagens, ele funciona perfeitamente. A seguir, está o código para escrever o byte [] no arquivo:
var fs = new BinaryWriter(new FileStream("tmp.bmp", FileMode.Create, FileAccess.Write));
fs.Write(b);
fs.Close();
O que estou perdendo aqui
EDITA
Aqui está meu código completo que estava causando o problema
Socket s = listener.AcceptSocket();
byte[] b = new byte[imgLen];
s.Receive(b);
MemoryStream ms = new MemoryStream(b);
// now here I am using ms.Seek(0, SeekOrigin.Begin); that fixed my problem.
Bitmap bmp = new Bitmap(ms);
pictureBox1.Image = bmp;
s.Close();
Estou usando esse código emForm_Load
event e não há nada extra. Estou apenas tentando exibir uma imagem transmitida na rede. O servidor está escrito em Java que está transmitindo esta imagem.
Espero que esclareça as dúvida
Obrigad