0

我有一个使用 PortSip 库的 .NET 核心应用程序。到目前为止,无论是在我的 Windows 10 笔记本电脑本地还是在安装了 Windows Server 2019 的 EC2 AWS 实例中,一切都运行良好,现在我想在 Docker 容器中进行这项工作。

所以我使用了一个类似于上面提到的 Dockerfile 这个链接https://schwabencode.com/blog/2018/08/30/ASP-NET-Core-with-NET-Framework-on-Docker来拥有一个 Windows Server Core 映像使用 .NET 框架(PortSip 需要)和 .NET 核心(我的应用程序需要)以及添加的命令来安装 C++ Redistributable。

结果是我在尝试运行我的应用程序时收到以下错误:

Unhandled exception. System.DllNotFoundException: Unable to load DLL 'portsip_sdk.dll' or one of its dependencies: The specified module could not be
 found. (0x8007007E)

DLL在那里!此外,当我将它们更改为 PortSip 的 32 位 DLL 时,错误变为“尝试加载格式不正确的程序”。这意味着感觉到 DLL 的存在,但由于某种原因,仍然无法加载。还值得一提的是,在上面提到的空白 EC2 中使用完全相同的安装(.NET 和 C++ 可再发行组件),该应用程序可以正常工作。

我错过了什么?

提前感谢

4

1 回答 1

0

通过将两个 DLL C:\Windows\System32\edputil.dll 和 C:\Windows\System32\msdmo.dll 从我的本地计算机复制到该 docker 映像来解决。

于 2020-12-06T10:40:01.403 回答