Hola!
Estoy intentando guardar imágenes en una base de datos SQL Server 2000. Voy explicando...
En la BD he creado un campo de tipo "binary" donde tengo intención de guardar dicha imagen convertida a binario.
Para convertir la imagen a binario utilizo estafunción que he encontrado por la red...
[color=#0000ff size=2]
Public[/color] [color=#0000ff size=2]Shared[/color] [color=#0000ff size=2]Function[/color] Image2Bytes([color=#0000ff size=2]ByVal[/color] img [color=#0000ff size=2]As[/color] Image) [color=#0000ff size=2]As[/color] [color=#0000ff size=2]Byte[/color]()
[color=#0000ff size=2]Dim[/color] sTemp [color=#0000ff size=2]As[/color] [color=#0000ff size=2]String[/color] = Path.GetTempFileName()
[color=#0000ff size=2]Dim[/color] fs [color=#0000ff size=2]As[/color] [color=#0000ff size=2]New[/color] FileStream(sTemp, FileMode.OpenOrCreate, FileAccess.ReadWrite)
img.Save(fs, System.Drawing.Imaging.ImageFormat.Png)
[color=#008000 size=2]' Cerrarlo y volverlo a abrir[/color]
[color=#008000 size=2]' o posicionarlo en el primer byte[/color]
[color=#008000 size=2]'fs.Close()[/color]
[color=#008000 size=2]'fs = New FileStream(sTemp, FileMode.Open, FileAccess.Read)[/color]
fs.Position = 0
[color=#008000 size=2]'[/color]
[color=#0000ff size=2]Dim[/color] imgLength [color=#0000ff size=2]As[/color] [color=#0000ff size=2]Integer[/color] = [color=#0000ff size=2]CInt[/color](fs.Length)
[color=#0000ff size=2]Dim[/color] bytes(imgLength - 1) [color=#0000ff size=2]As[/color] [color=#0000ff size=2]Byte[/color]
fs.Read(bytes, 0, imgLength)
fs.Close()
[color=#0000ff size=2]Return[/color] bytes
[color=#0000ff size=2]End[/color] [color=#0000ff size=2]Function
El problema viene cuando invoco esa función, me salta una pantalla de error que dice:
"Error genérico en GDI+"
El error salta a la altura de la línea
"img.Save(fs, System.Drawing.Imaging.ImageFormat.Png)"
Creo que está en System.Drawing.Imaging.ImageFormat.Png porque al variar ese formato a System.Drawing.Imaging.ImageFormat.MemoryBmp el error que me mostraba era diferente.
No encuentro nada por la red y estoy empezando a desesperarme ya. Cualquier ayuda sería de grandísima ayuda.
Muchas gracias.
Saludos.[/color]