字节数组到IIS6上的图像

盖·帕西(Guy Passy)

改写这个问题:

我有大量的.tif文件,其中大多数(如果不是全部)具有以下定义:

  • 位深:1
  • 压缩:CCITT T.6(第4组)

有些是多页的,有些则不是。

我使用以下命令加载了它们:

private byte[] LoadArchivedFile()
{
    FileStream file = File.Open(fileAddress, FileMode.Open, FileAccess.Read, FileShare.Read);
    byte[] fileByteArray = ReadFully(file, 0);
    return fileByteArray;
}

然后,我将这些字节数组保存在SQL Server 12 DB的varbinary列中。

现在,我正在制作一个MVC2网页来查看这些.tif文件。然后,该过程应为:

  • 加载字节数组
  • 将其转换为 Image
  • 在.tif中选择一个页面
  • 将该页面转换为Jpeg
  • 将页面发送到浏览器

在开发环境中,一切都可以完美运行。将项目安装到目标IIS(当前为6,我已打开7.5的请求)后,该过程在以下行中失败:

[... load byte array from DB]
byte[] imageBinary = (byte[])results.fileBinary;

using(MemoryStream ms = new MemoryStream(imageBinary))
{
    Image image = Image.FromStream(ms);  <---- FAILS HERE
    [...]
}

堆栈跟踪:

System.ArgumentException: Parameter is not valid.
at System.Drawing.Image.FromStream(Stream stream, Boolean useEmbeddedColorManagement, Boolean validateImageData)
at System.Drawing.Image.FromStream(Stream stream)
at [MyCode]

现在,我收到的字节数组没有问题-从字面上看它是来自数据库的相同数据。我什至比较了几个字节,总长度...无论如何,这是相同的来源。这不是问题所在。

我发现了另一个类似(尽管不完全相同)问题的问题。在那里,有关位深,像素格式,压缩和编解码器的问题。我现在不确定原始图像的像素格式是什么,尽管从字节数组转换回Image后它是Format1bppIndexed。

我很茫然……目标机器上缺少编解码器是否出了问题?在将图像二进制文件上传到数据库之前,我需要做些什么吗?

盖·帕西(Guy Passy)

仅供参考-如果可能,切换到IIS7可以完全解决该问题。

我仍然没有在IIS6上弄清楚这个问题,并花了另一个完整的工作日对其进行研究……无济于事。我相信这与MIME类型处理有关,是IIS7中DLL的一些附加功能,也许是GDI + ...我真的不知道。但是,如果还有其他人遇到此问题-升级到IIS7并省去麻烦。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

IIS6上图像的字节数组

来自分类Dev

图像到字节数组-ExternalException

来自分类Dev

编码图像到字节数组

来自分类Dev

字节数组到8位truecolor图像

来自分类Dev

C#图像到字节数组的巨大尺寸

来自分类Dev

字节数组到图像异常,参数无效

来自分类Dev

Delphi(XE6):字节数组到TStringList

来自分类Dev

字节数组到布尔数组

来自分类Dev

来自字节数组的图像

来自分类Dev

串联图像字节数组

来自分类Dev

什么是图像的字节数组?

来自分类Dev

固定对象到字节数组

来自分类Dev

Clojure,文件到字节数组?

来自分类Dev

WPF WriteableBitmap到字节数组

来自分类Dev

BigIntegers的ArrayList到字节数组

来自分类Dev

字节数组到BitmapImage WP

来自分类Dev

图片框到字节数组

来自分类Dev

ZipEntry到字节数组

来自分类Dev

图像/图像源/互操作图像到字节数组

来自分类Dev

字节数组上的Printf

来自分类Dev

字节数组上的Printf

来自分类Dev

如何通过Soap Web服务(XML)传递图像的字节数组并在Android设备上对该字节数组进行解码以将其转换回图像

来自分类Dev

如何通过Soap Web服务(XML)传递图像的字节数组并在Android设备上对该字节数组进行解码以将其转换回图像

来自分类Dev

AS3字节数组到C#字节数组

来自分类Dev

AS3字节数组到C#字节数组

来自分类Dev

MySQL和Java:检索到的字节数组与存储时的字节数组不同

来自分类Dev

字节字符串到字节数组

来自分类Dev

字节数组[]到字节在Java中可能吗?

来自分类Dev

字节数组到字节的转换错误