11

基本上,我想要的是能够探索 ActiveX DLL。我通常启动 VB 6,将 DLL 添加到项目的“引用”,然后使用对象资源管理器。

但是,在这台特定的机器上我无法安装 VB/VS。
我敢肯定有一个工具可以做到这一点。有人知道吗?

谢谢

4

3 回答 3

14

如果机器安装了 Microsoft Office,您可以进入内置的 Visual Basic for Applications IDE 并在那里加载对象:

工具菜单 -> 宏 -> Visual Basic 编辑器(或按 Alt+F11)

然后在 VBA 窗口中,工具菜单 -> 参考 -> 浏览以找到您的 DLL

并查看菜单 -> 对象浏览器以查看对象的内容(或按 F2)

于 2008-11-04T15:30:12.280 回答
8

为此,我使用了 Microsoft 的 OLE/COM Object Viewer。它曾经与旧版本的 Visual Studio 一起安装,并且仍然是 Windows SDK 的一部分。

它似乎也可以单独使用——这是来自旧版本的 Windows SDK,但我认为这个工具最近没有太大变化。

要查看特定 DLL 或 OCX 的类型信息,文件、查看 TypeLib... 是您正在寻找的选项。您还可以浏览主窗口中的“控件”组,以查看有关已注册控件的详细信息。右键单击控件的条目,然后单击查看类型信息以查看其公开的类型和方法的详细信息。

这将显示比 VB6 更多的信息。如果您正在查看 ActiveX 控件,则需要查看类型库显示的coclassdispinterface部分。

(“查看”菜单中还有一个专家模式选项——这将向您显示存储在注册表中与 COM、OLE 和 ActiveX 相关的几乎所有内容。这通常是相当多的信息.​​.....)

于 2008-11-04T15:48:06.767 回答
3

是否可以从该机器下载组件并在 Visual Studio 中进行本地检查?(这是我的第一个建议。)(顺便说一句,Visual Studio 的 .NET 版本还具有类似 VB6 的对象资源管理器,可以很好地解决这个问题。)

或者,它不是免费的,但您可以尝试ActiveXplorer。(我还没有尝试过,但它看起来很有希望。) (停产)

于 2008-11-04T15:26:48.603 回答