Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/136.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何安装执行本机C++;windowsservercore Docker映像上的DLL/EXE 我在使用WielsServer核心DOCKER容器的C.NET内核应用程序时使用本地C++ C++ DLL。尝试使用C#.NET核心应用程序中的pInvoke从本机DLL调用公开API时出现以下错误_C++_Windows_Docker_Dll_Docker For Windows - Fatal编程技术网

如何安装执行本机C++;windowsservercore Docker映像上的DLL/EXE 我在使用WielsServer核心DOCKER容器的C.NET内核应用程序时使用本地C++ C++ DLL。尝试使用C#.NET核心应用程序中的pInvoke从本机DLL调用公开API时出现以下错误

如何安装执行本机C++;windowsservercore Docker映像上的DLL/EXE 我在使用WielsServer核心DOCKER容器的C.NET内核应用程序时使用本地C++ C++ DLL。尝试使用C#.NET核心应用程序中的pInvoke从本机DLL调用公开API时出现以下错误,c++,windows,docker,dll,docker-for-windows,C++,Windows,Docker,Dll,Docker For Windows,错误:无法加载DLL“MyDLL”:找不到指定的模块。(来自HRESULT的异常:0x8007007E) 问题:我的windows docker容器(从windowsservercore基本映像生成)有一个C#.net核心服务正在运行。。在特定的POST请求中。。我需要调用来自原生C++的DLL函数,我用pJoNK调用它。现在的问题是没有加载本机DLL,因为容器映像中缺少它的一些依赖项。。我试着安装可能的VC++可再发行版本。。但这并不能解决问题。。因此,在检查完整的依赖关系树(使用depend

错误:无法加载DLL“MyDLL”:找不到指定的模块。(来自HRESULT的异常:0x8007007E)

问题:我的windows docker容器(从windowsservercore基本映像生成)有一个C#.net核心服务正在运行。。在特定的POST请求中。。我需要调用来自原生C++的DLL函数,我用pJoNK调用它。现在的问题是没有加载本机DLL,因为容器映像中缺少它的一些依赖项。。我试着安装可能的VC++可再发行版本。。但这并不能解决问题。。因此,在检查完整的依赖关系树(使用dependency walker)时,我发现windowsservercore基本docker映像中缺少一些系统库。 以下是docker容器中缺少的一些LIB的列表

c:\windows\system32\ELSCORE.DLL
c:\windows\system32\DEVMGR.DLL
c:\windows\system32\DCOMP.DLL
c:\windows\system32\DSREG.DLL
c:\windows\system32\SHDOCVW.DLL
c:\windows\system32\COREUICOMPONENTS.DLL
c:\windows\system32\POLICYMANAGER.DLL
c:\windows\system32\OPENGL32.DLL
所以我的问题是,如何解决这些系统级库对容器的依赖?我知道,出于明显的原因(最小化映像大小),这些LIB被排除在基本windowsservercore docker映像之外。但是有没有标准的方法/安装程序/软件包可以将丢失的系统库安装到我的docker映像中?或者我应该手动将所有必需的lib复制到system32文件夹中吗

PS:在安装VC++可再发行版之后,同样的代码可以在主机(windows server 2016)上运行,只是它不能在windowsservercore Docker容器上运行(即使在安装上述VC++可再发行版之后)

谢谢,
-Harsh

目前,使用当前发布的windows server docker映像,您无法执行依赖于上述系统库的本机二进制文件。要在已发布的windows server docker容器上运行此功能,我们必须等待下一个windows docker映像(具有更大的占用空间和更多可用功能)发布。

您可以尝试新的完整windows映像,谢谢,但为了使用此内部docker映像。我们也应该在主机上使用最新的内部构建操作系统,我认为这不适合我们的情况。因此,我认为我们应该等待Windows发布支持更多功能的新docker映像。是的,但这将为您了解您的功能是否在该映像中可用提供一个起点谢谢@GregorySuvalian。。我要试试这个。。您知道预安装了最新windows server insider build的Amazon或Azure AMI吗?或者我们需要在本地(可能是在虚拟机上)尝试吗?我不相信任何云提供商都有运行内部图像的功能,我面临着同样的问题。。。你的回答仍然有效吗?那些更新的图片发布了吗?