Magick.net崩溃,但在Windows中不会引发任何错误

时间:2019-07-13 22:16:34

标签: c# magick.net

我有一个使用Magick.Net Q8 X64的C#程序 7.10.1

我正在VMware机器上的Windows 7中的VS2013中构建程序。运行良好。我能够遍历数百张图像。

但是,当我在完整的Windows 7计算机上运行该程序时,会出现黑屏。没有错误信息,没有内存问题,没有BSOD,只是完全变黑了。我必须重新启动计算机的地方。

我知道代码的前几行会运行,因为它会创建目录。但是,一旦它进入了magick.net部分,我认为那是它死的时候。

foreach (var file in d.GetFiles("*.jpg"))
        {
            using (MagickImage image = new MagickImage(file.FullName))
            {
                MagickGeometry sizeThumb = new MagickGeometry(142, 142);
                MagickGeometry sizePreview = new MagickGeometry(600, 600);

                // make sure we respect the aspect ratio
                sizeThumb.IgnoreAspectRatio = false;
                sizePreview.IgnoreAspectRatio = false;

                //rotate the image right way up
                image.AutoOrient();

                //resize for preview & write it
                image.Resize(sizePreview);
                image.Write(previewPath + file.Name);

                //resize for thumb & write it
                image.Resize(sizeThumb);
                image.Write(thumbPath + file.Name);

                //dispose of the image from memory  
                image.Dispose();
                i++;
                Console.WriteLine(i);
            }
        }

1 个答案:

答案 0 :(得分:0)

在对图像执行任何Magick.Net操作(如调整大小)之前,请尝试使用OpenCL.IsEnabled = false禁用此操作的gpu加速。