一段涉及bmp图片的处理代码,部分代码如下
        for (int i = 0; i < files.Length; i++)
       {
        string temp = @"c:\test\" + i + ".png";
        Bitmap bmp = new Bitmap(temp);
        bmp.RotateFlip(RotateFlipType.RotateNoneFlipY);
        Console.WriteLine(i);
       }c盘的test文件夹中存放着207张png格式的图片,但是这一段代码运行到第200次左右时就会发生
“System.Runtime.InteropServices.ExternalException”类型的未经处理的异常出现在 System.Drawing.dll 中。其他信息: GDI+ 中发生一般性错误这样的异常,这么简单的代码怎么看也没看出什么错误。而且异常并不是在固定的某一个文件出现,但是一般会出现在195到205之间出现;各位大大们帮忙看一下,谢谢了,项目马上就要截止了,现在有点急……

解决方案 »

  1.   

    http://www.cnblogs.com/wudingfeng/archive/2008/07/24/1250564.html
      

  2.   

     string[] files = Directory.GetFiles(@"c:\test\", "*.png"); Console.WriteLine(files.Length);
                for (int i = 0; i < files.Length; i++)
                {
                    string temp = @"c:\test\" + i + ".png";
                  //  aviStream.AddFrame(new Bitmap(files[i]));
                    Bitmap bmp = new Bitmap(temp);
                    bmp.RotateFlip(RotateFlipType.RotateNoneFlipY);
                    Console.WriteLine(i);
                }
    排版不是很好,但是代码就这一些了
      

  3.   

     using(Bitmap bmp = new Bitmap(temp))
    {
            bmp.RotateFlip(RotateFlipType.RotateNoneFlipY);
            Console.WriteLine(i);
    }