2011-03-16 329 views
4

我想查看“.ocx”文件的接口。像这样:如何查看ocx文件的接口?

enter image description here

但对于一些的.ocx,我只能看到5种功能,如:

enter image description here

的问题是:我怎样才能看到这些OCX的接口文件。 我试试这个:

答:
a)我想注册它,并在Visual Studio中看到它。但是当我注册它时,会出现一个错误“LoadLibrary(path:\ filename.ocx)failed”。就像这样:

enter image description here

B)然后我用 '的Dependency Walker' 打开OCX,找到该文件的依赖性没有DLL文件。 enter image description here

c)如何注册?

B. 我使用“Dll导出查看器”,现在我可以看到函数的名称,但仍然无法获取函数的参数。 我如何获取函数的参数?

+0

OLE View是什么意思? – sharptooth 2011-03-16 07:36:46

+0

OCX属于COM系列,因此,接口和方法不会以与常规.DLL相同的方式导出。您不会在出口表中找到它们。请参考Marius的回答以及David Heffernan的建议使用'#import' – MickyD 2015-09-24 22:48:48

回答

4
+0

是的,我将ocx文件拖到OLE Obj查看器中,我不知道该消息的含义。我使用另一个工具“Dll导出查看器”,现在我可以看到该函数的名称,但无法获取参数信息。 – 2011-03-16 08:20:32

+0

@SidZhang你不能在COM/OCX中使用DLL Export viewer工具。您需要使用COM技术,例如_type libraries_ – MickyD 2015-09-24 22:50:46

1

该接口在类型库(TLB)中进行了描述。您的DLL(OCX是一个DLL)应该包含TypeLibrary资源中的TLB。您可以提取此TLB并获取接口说明。这项工作也应该由OLE View完成。

如果您的DLL不包含TLB并且没有提供TLB文件,您将无法获得接口说明。

编辑:像“DLL Export Viewer”这样的工具显示的信息比OLE View少。使用Microsoft提供的工具是值得的。

当你在你的文件的截图装饰的名字,你得到的函数签名与“微软(R)C++名称Undecorator”(undname.exe)

+0

我使用了另一个工具“Dll Export Viewer”,现在我可以看到该函数的名称,但无法获取该参数。我现在需要参数信息! – 2011-03-16 08:21:34

+0

我用我的一个OCX尝试了“DLL Export Viewer”。它只显示了函数名称,没有参数。在用OLE视图检查相同的OCX时,我得到了完整的函数签名。这是值得尝试的OLE视图。 – harper 2011-03-16 12:06:57

0

很久以前,我用这个工具叫做XRay:X-Ray Vision。我相信它使用起来相当简单,并且仍然可以在Windows 7中运行。但作为其他工具,它需要DLL/OCX嵌入类型库,或者您需要找到相应的一个。