使用两个类似的Windows应用程序处理DLL搜索

我有两个非常相似的Windows应用程序。 可执行文件A.exe和B.exe必须保持分离,以及每个DLL(libApp.dll,我有一个用于A,另一个用于B,彼此不同)。 但是这些可执行文件共享其他大量的.dll文件。

由于windows搜索路径的性质,一种解决方案是提供两个目录,每个目录包含所有dll,正确的libApp.dll和正确的可执行文件。 实际上,Windows首先搜索可执行文件的目录,然后搜索系统目录,然后搜索Path变量中的所有内容。

目前,上述两个分离目录的解决方案可行,但在磁盘空间中非常耗费。 我想整理通用目录中的常见dll,并将A.exe和B.exe引用到这些dll的通用目录中。 为此,我必须将这个常见目录放在Path中,但这有一个小问题:如果用户在标准Windows路径中安装了一个名称相同的库,该库将覆盖我的内容,并带来可怕的后果。

在linux和OSX上,有envvars来指定库搜索路径,但在Windows上它显然更复杂。 有谁知道这个问题通常如何解决?

链接地址: http://www.djcxy.com/p/7745.html

上一篇: Handle DLL search with two similar Windows applications

下一篇: DLLs searching for DLLs