我对side-by-side assemblies
有疑问。
以下是这种情况:
我有一个可执行文件app.exe
,它通过搜索plugins
目录来加载插件。 app.exe
取决于某个A.dll
。
我正在开发一个插件,该插件依赖于具有相同名称的旧A.dll
的自定义版本。将这个较旧的自定义版本更新到较新版本是不可能的,所以我想我可以同时加载这两个A.dll
文件。
这是目录结构:
\bin
app.exe
A.dll (newer version)
\plugins
myplugin.dll
A.dll
的两个版本本身都依赖于大量其他DLL,这些DLL可能具有类似的版本问题。 (我还应该提到我正在使用64位应用程序,如果这有所不同。)
如何在Visual Studio中进行此设置,以便我可以同时加载两个A.dll
库,以便myplugin.dll
使用旧版本,而app.exe
使用较新版本版本
答案 0 :(得分:0)
由于这些是插件,因此您可以通过调用LoadLibrary
或类似插件来加载它们。在这种情况下,您只需将完整路径传递给DLL即可加载它。