0

我们有 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史蒂夫42

4

1 回答 1

1

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

如果您安装了 Visual Studio,则有许多工具,例如 COM Viewer,它们会在拖放时告诉您两个 DLL 的 GUID。

于 2013-04-06T05:09:22.603 回答