首页 > 解决方案 > 调用 nuGet 包中的代码时,GDI+ 中发生一般错误

问题描述

我正在开发一个程序,该程序使用一个 NuGet 包,该包在从网络摄像头异步加载(带等待)后从 byteArry 保存图像。当我直接执行代码时,它可以工作,但是当我通过 NuGet 包在其他项目中调用该函数时,它会在 GDI+ 中引发一般错误而失败。

我在该论坛的另一篇文章中读到,如果字节数组未完全加载,可能会发生这种情况。因此,我在保存之前添加了 1 秒的延迟,但这没有帮助。

谁能告诉我,如果我直接调用函数而不是库,为什么相同的代码不会引发异常?

亲切的问候,沃尔夫冈

标签: c#nuget-package

解决方案


最后我找到了问题的解决方案:在直接使用该函数的测试程序中,我将图像存储到可执行文件的目录中。在通过 nuget 包使用该功能的应用程序中,我将图像存储到一个不存在的目录中。

因此,在图像路径中创建所有目录为我解决了这个问题:) 因此我使用以下代码:

System.IO.Directory.CreateDirectory(Path.GetDirectoryName(filename));

如果可以将其集成到 System.Drawing.Image.Save 中,那就太好了!


推荐阅读