2012-04-05 50 views
1

我继承了一个传统的ASP应用程序,并通过我看到一个自定义的COM对象引用如何查找仅给出server.create实例的COM对象?

Server.CreateObject("DBaseManager.Recordset") 

现在的代码看,不幸的是通过对源代码看有没有.DLL文件设置成因此COM DLL 必须仍然存在于现场服务器上。

为了让我的开发服务器上的代码工作,我需要得到一份dll的副本,以便我可以在我的开发服务器上注册它。

有没有人有任何关于如何能够找到使上述调用的COM DLL的建议?

感谢和良好的祝愿 马克

回答

5

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

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


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

+0

+1。并且该脚本也可能有所帮助:http://support.softartisans.com/kbview_1294​​.aspx – 2012-04-05 11:50:37

+0

感谢您的帮助,完美的工作:) – Mark 2012-04-09 20:55:17

相关问题