2010-09-14 70 views
1

可以在机器上注册多于.DLL的同名吗?可以在机器上注册多个.DLL的同名吗?

例如,如果我在C:\和c:\ MyDLLs中都有MyDLL.dll,是否可以注册这两个MyDLL.dll文件?如果我这样做,如果应用程序试图访问MyDLL.dll,将使用哪个MyDLL.dll?

回答

0

(来源:http://www.codenewsgroups.net/vb/t2754-dll-hell-query.aspx

如果他们有相同的文件名,然后他们无法共存于同一 目录。必须重新命名或移动。如果他们的ActiveX DLL文件 然后将文件名比相关的ProgID不太重要/ CLSID用于 注册 - 除了重命名它可能打乱后续 卸载或从该供应商的软件重新安装。

假设他们有不同的ProgID和CLSID的话,应该在注册他们没有 问题。 但是,如果你可以尝试避免这种

P.S.查看上面的链接以获得一些很好的见解。

0

最有可能你身边的DLL问题它实现了一个COM组件。它实际上使用GUID(全局唯一标识符),它在注册表中的hkey_classes_root/clsid下查找,并且子键中有一个指向物理位置的方案。

开始了解这一点,打开注册表编辑器,并做了控制F查找的完整路径,无论是在问题的DLL的 - 你会看到什么我谈论。

相关问题