experiment : 用HTML调用第三方无文档说明的OCX
2012-10-21 17:09
435 查看
假设第三方的ocx已经到手, 我从codeproject上下载了一个人家编译好的ocx.
http://www.codeproject.com/Articles/1384/Hex-Editor-OCX-Control
注册控件 : regsvr32.exe HexEdit.ocx
@note : 如果不想用了, 反注册控件 : regsvr32.exe /u HexEdit.ocx
用OleViewer查找控件classId, 还是用工具看方便, 靠谱.
OleViewer是VS系列自带的工具, 我上传了一份到 http://download.csdn.net/detail/lostspeed/4670549
Windows非C++程序员 可以去下载.
vs2005自带的小工具, oleviewer, depends, errlook, spy++, guidgen, tstcon32 etc.
对于在没有安装vs编译环境的计算机上找问题, 有这些小工具, 还是很有帮助.
我今天用的是OleViewer, 在vs6, vs2003, vs2005中都有,
但是vs2008, vs2010就没有OleViewer, 也许工具改了名字?
工具路径在安装好的vs路径下的位置如下, 如果是懒汉, 可以直接全盘搜索"OleView*.*"
D:\Program Files (x86)\Microsoft SDK\Bin
D:\Program Files (x86)\Microsoft Visual Studio .NET 2003\Common7\Tools
D:\Program Files (x86)\Microsoft Visual Studio .NET 2003\Common7\Tools\Bin
D:\Program Files (x86)\Microsoft Visual Studio 8\Common7\Tools\Bin
查看控件接口定义和接口参数
可以看到这个控件有2个方法
这样, 我们就可以根据控件定义的具体方法, 参数, 来调用控件(从EXE中, 从HTML中)
HTML代码中需要控件的CLSID, 用OleViewer拷贝ClsId到剪贴板
测试过的HTML网页代码如下:
http://www.codeproject.com/Articles/1384/Hex-Editor-OCX-Control
注册控件 : regsvr32.exe HexEdit.ocx
@note : 如果不想用了, 反注册控件 : regsvr32.exe /u HexEdit.ocx
用OleViewer查找控件classId, 还是用工具看方便, 靠谱.
OleViewer是VS系列自带的工具, 我上传了一份到 http://download.csdn.net/detail/lostspeed/4670549
Windows非C++程序员 可以去下载.
vs2005自带的小工具, oleviewer, depends, errlook, spy++, guidgen, tstcon32 etc.
对于在没有安装vs编译环境的计算机上找问题, 有这些小工具, 还是很有帮助.
我今天用的是OleViewer, 在vs6, vs2003, vs2005中都有,
但是vs2008, vs2010就没有OleViewer, 也许工具改了名字?
工具路径在安装好的vs路径下的位置如下, 如果是懒汉, 可以直接全盘搜索"OleView*.*"
D:\Program Files (x86)\Microsoft SDK\Bin
D:\Program Files (x86)\Microsoft Visual Studio .NET 2003\Common7\Tools
D:\Program Files (x86)\Microsoft Visual Studio .NET 2003\Common7\Tools\Bin
D:\Program Files (x86)\Microsoft Visual Studio 8\Common7\Tools\Bin
查看控件接口定义和接口参数
可以看到这个控件有2个方法
这样, 我们就可以根据控件定义的具体方法, 参数, 来调用控件(从EXE中, 从HTML中)
HTML代码中需要控件的CLSID, 用OleViewer拷贝ClsId到剪贴板
测试过的HTML网页代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <title> test by LostSpeed </title> <SCRIPT LANGUAGE="VBScript"> <!-- Function CreateVBArray() Dim MyVbArray(3) MyVbArray(0) = 1 MyVbArray(1) = 3 MyVbArray(2) = 5 CreateVBArray = MyVbArray End Function --> </SCRIPT> <script type="text/javascript"> function fn_test_ocx() { var obj; var varArray; var varData; obj = document.getElementById('HexEditOcx'); /// 方法1 obj.AboutBox(); ///< 这个无参方法调用正确 /// 方法2 varData = CreateVBArray(); /// 控件方法原始定义: SCODE SetData(VARIANT* pData, long dwStartAddr); obj.SetData(varData[0], 3); ///< 执行后, 网页显示类型不匹配, 不去深究了. 和这个专题无关 }; </script> <body> <input type="button" onclick="fn_test_ocx()" value="TestOcx"/> <object id="HexEditOcx" classid="clsid:2E93307E-777D-49E4-886A-D5B04470796A" codebase="HexEdit.ocx#version=1,0"></object> </body> </html>
相关文章推荐
- VS2010 C#中实现在调用第三方ocx控件时,无需手动注册ocx控件
- JAVA 文档注释,类的说明,HTML说明文档的生成
- JACOB调用WORD书签修改WORD文档,并生成html显示到页面中
- HTML文档中用JavaScript调用Microsoft Agent的COM接口
- HTML文档中用JavaScript调用Microsoft Agent的COM接口
- [第一篇]先发布一个高亮代码在线html编辑器(.NET控件),附源码,调用方法说明
- 迅雷 API 接口说明文档 -调用迅雷自动下载
- 关于 调用 JNI JAR 的说明和注意事项,调用第三方 JAR SDK 和 翻译 安卓 JAVA 代码 的说明 V2015.6.10
- twain.dll文档 和扫描程序设计说明文档(twain_32调用说明)
- .net HTMLParser详细使用说明 强大的Filter类 解析HTML文档如此简单
- HTML DOCTYPE文档类型举例说明
- JAVA 文档注释,类的说明,HTML说明文档的生成
- android app集成第三方SDK--没有说明文档
- android和JS交互,相互调用方法传值。不使用第三方实现原生加载word、ppt、pdf文档
- 利用UIDocumentInteractionController文档预览以及调用iPhone里第三方相关的app打开文档
- 微信JS-SDK说明文档 能调用微信扫一扫 ,那能不能让浏览器支持微信支付呢
- 搜狐微博WAP第三方一键分享说明文档
- node.js调用C++说明文档
- 迅雷 API 接口说明文档 -调用迅雷自动下载
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第33讲_Object类_闭包_成员函数再说明_聪明的猪小练习_学习笔记_源代码图解_PPT文档整理