【发布时间】:2018-05-13 11:46:48
【问题描述】:
我正在尝试从 vs2017 发布一个图像大小调整 aws lambda 函数(用 c# 为 .net core v1.0 编写)。我已经尝试了几个与 .net 核心(Magick.net 和 SkiaSharp)兼容的第三方库。但是,在执行该函数时,我遇到了 System.DllNotFoundException,说找不到库的 DLL。起初,我认为我的问题特定于正在使用的库,但无论使用什么库,我都会收到此错误。
有什么想法吗?也许我需要在 Visual Studio 中做一些特别的事情才能让 dll 上传到亚马逊?
示例错误:System.DllNotFoundException:无法加载 DLL 'libSkiaSharp':找不到指定的模块。
如果我不能为 c# aws lambda 函数使用第三方图像大小调整库,那么是否有可用的 .net 核心调整大小功能(因为 system.drawing 仅在 Windows 上可用,而 aws 在 linux 上运行)
我在第一次使用引用的 DLL 中的函数时遇到错误。 SkiaSharp 示例:
using SkiaSharp;
using (var objectResponse = await S3Client.GetObjectAsync(s3Event.Bucket.Name, s3Event.Object.Key))
{
// THROWS THE DLL FOUND FOUND EXCEPTION
using (var original = SKBitmap.Decode(objectResponse.ResponseStream))
{
}
}
【问题讨论】:
-
请出示相关代码
-
var original = SKBitmap.Decode(objectResponse.ResponseStream)) // 抛出 DLL 发现异常
-
感谢 Ash,但请编辑您的问题并在此处添加代码以便所有人清楚地看到
-
访问 DLL 有很多方法会出错...一旦你用代码(以及你的 Import 语句,如果适用)来表达你的问题 - 答案就会出现
-
谢谢,我用我的代码的 sn-p 编辑了这个问题。
标签: c# amazon-web-services lambda visual-studio-2017