vc dll自动注销自己

时间:2013-04-05 19:03:06

标签: windows

我们有2个DLL。这两个dll的功能基本相同。 一个DLL(DLL_A)位于一个目录中,用于运行网页。 另一个DLL(DLL_B)位于另一个目录中 网页会调用它。这两个网页都是孤立的。没有 从myWebA.htm联系到myWebB.htm d:\ mywebA \ myWebA.htm
d:\ mywebA \ DLL_A.dll

d:\ myWebB \ myWebB.htm
d:\ myWebB \ DLL_B.DLL

DLL_A是几年前写的。 最近我们创建了用于myWebB的DLL_B。 现在我们注意到了这个问题。

如果用户网页调用DLL_A.dll,则取消注册DLL_B.dll。 反之亦然。

两个DLL都可以注册。 被称为FIRST的DLL将取消注册另一个DLL。

有一件事我注意到,哪个DLL正在运行将具有相同的PID 在服务器上(Windows 2003)。

如果我可以用不同的PID注册这些可以解决问题吗? 如果是这样的话?

还有其他建议吗?

TIA Steve42

1 个答案:

答案 0 :(得分:1)

首先,我假设你在这里谈论COM DLL,而不是其他任何。 在这种情况下,可能两个DLL都具有相同的GUID。在这种情况下,它会产生一个问题,因为一次只能注册一个DLL,因为GUID需要是唯一的机器范围。

如果你安装了Visual Studio,有很多工具,比如COM Viewer,它会告诉你拖放时两个DLL的GUID。