如何找到只给出server.create实例的COM对象?

时间:2012-04-05 07:42:12

标签: com asp-classic

我继承了一个经典的ASP应用程序并查看代码,我看到了一个自定义的COM对象引用

Server.CreateObject("DBaseManager.Recordset")

现在,不幸地看到源代码没有提供.dll,因此COM dll 必须仍然存在于实时服务器上。

为了让代码在我的Dev Server上工作,我需要获得一个dll的副本,这样我就可以在我的Dev服务器上注册它。

有没有人对我如何能够找到进行上述调用的COM dll有任何建议?

谢谢,并祝福 标记

1 个答案:

答案 0 :(得分:5)

注册表搜索 - 在HKEY_CLASSES_ROOT下,找到DBaseManager.Recordset密钥。在该密钥下,应该有一个CLSID密钥,其默认值包含一个guid。

现在,在HKEY_CLASSES_ROOT\CLSID下搜索该guid。该键下应该有一个名为InprocServer32的子键(如果它是一个进程内的COM库),而该键应该有一个默认值,给出DLL的路径。


当然,如果有问题的DLL是更大的产品或SDK的一部分,仅仅在您的开发服务器上安装DLL可能是不够的。您可能必须找到并安装整个产品/ SDK才能在其他计算机上实际工作。