我需要构建一个能够在运行时加载其他 DLL 的 DLL;这些其他 DLL 与主 DLL(这是 Python 和扩展)具有相当密切的关系,因此它们必须具有公共运行时。主 DLL必须是可以简单地复制到目标机器上的单个文件。辅助 DLL 将放置在不同的目录中。
所以:“通用运行时”意味着没有静态链接;“单个文件 + 简单副本”排除了共享的 MS 可再发行文件,尤其是与“不同目录”结合使用时。
我只看到以下选项:将所有 DLL 链接到msvcrt.dll
; 将 current 嵌入msvcrtXX
到主 DLL 中并重新导出其所有符号;使用msvcrtXX
主机应用程序的。对我来说,第一个看起来最简单,因为它是一种常见的需求,并且有很多网页解释了如何去做。你会如何处理这个问题?