Skiasharp,UWP 平台错误 0x747219F2 (ucrtbase.dll)

Skiasharp, error in UWP platform 0x747219F2 (ucrtbase.dll)

i 运行 在 UWP 项目上使用 SkiaSharp(通过 NuGet)的简单示例。 我正在尝试使用 SKBitmap.Decode(filename) 加载 png 图像,但抛出了此错误:

0x747219F2 (ucrtbase.dll)

An invalid parameter was passed to a function that considers invalid parameters fatal.

在 Windows 表格 运行 中的相同示例没有问题。

因为 UWP 在沙箱中运行,您只能访问文件系统中有限数量的位置而无需额外权限。在这种情况下,您的代码无法通过绝对文件路径访问任意位图。

您可以访问应用程序安装文件夹及其 ApplicationData 中的文件。

最简单的解决方案是将位图作为 Content 文件添加到您的 UWP 项目中,例如添加到 Assets 文件夹中,然后像这样访问它:

var packagePath = Package.Current.InstalledLocation;
var filename = Path.Combine( packagePath, "Assets/YourImage.png" );
SKBitmap.Decode(filename);

这应该会按预期工作。