我做了什么: 尝试使用 Telerik RadUpload 控件从上传的文件创建图像
Dim lImage As Drawing.Image = Drawing.Image.FromStream(FileUpload.UploadedFiles(0).InputStream)
出了什么问题:
从我的开发机器上,我可以上传任何 .ico 类型的文件,但它在生产服务器上抛出异常: System.ArgumentException: Parameter is not valid. at System.Drawing.Image.FromStream(FileUpload.UploadedFiles(0).InputStream)
对于特定的 ico(我会附加文件,但不允许 .ico 扩展文件)
我无法真正调试该问题,因为它正在我的开发机器(Windows 7)上运行。关于为什么在生产服务器上出现问题以及我应该尝试什么的任何建议?同样,我无法在我的机器上重现该问题。
更新一:我可以在生产中上传其他 ico 文件。问题在于使用 Irfan View Image 或 Ico FX 等工具创建的 ico。测试团队使用这些工具创建了 24 位色深的 ico 文件,但在上传时遇到了问题。开发机器具有 .net 框架 4.5,而生产机器具有 4.0
更新二:导致问题的特定图标具有 24 位色深。1 位、4 位、8 位、32 位工作没有任何问题。