您的位置:首页 > 其它

DGI+中发生一般性错误的解决方法

2009-03-19 10:20 176 查看
一般DGI+中发生一般性错误是由于我们处理图片时引起的,上篇文章中从数据库读取图片到pictureBox中,如果所存入的图片为gif格式就会发生此异常,一般解决方法如下:
]private void ShowImage(string sql)
{
//Ado为专负责连接数据库和执行T-SQL语句的类,这里将sql语句做为参数传过来
Ado fo = new Ado();
SqlCommand com = new SqlCommand(sql, fo.con);
fo.con.Open();
byte[] b = (byte[])com.ExecuteScalar();
if (b.Length > 0)
{
//将图像的字节数组放入内存流
MemoryStream stream = new MemoryStream(b, true);
stream.Write(b, 0, b.Length);
//通过流对象建立Bitmap
Bitmap map = new Bitmap(stream);
//根据图片大小建立map2,以下任意写的大小
Bitmap map2 = new Bitmap(154,179);
//下面两步将map复制到map2
Graphics draw = Graphics.FromImage(map2);
draw.DrawImage(map, 0, 0);
//设置pictureBox的显示图片为map2
pictureBox1.Image=map2;
stream.Close();
}
fo.con.Close();
}


一般通过以上方法就可以解决此异常了,不过这也只是我遇到的异常情况及用到的解决方法,还会不会有其他不能通过这种方法解决的我也还没有遇到过。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: