您的位置:首页 > 编程语言 > Java开发

JAVA怎么调用OCX控件

2017-01-12 15:05 676 查看
需要通过Jacob这个开源组件与OCX控件进行通讯,Jacob下载地址:http://sourceforge.net/projects/jacob-project/files/jacob-project/引用相应的包后就能ActiveXComponent app = new ActiveXComponent("Word.Application");以这种方式访问ActiveX对
首先需要肯定的是,可以在jsp页面通过js来调用ocx一、注册.ocx控件,在命令窗口运行:regsvr32.exe  XXX.ocx二、取得控件的classid,开始-->运行-->输:regedit,打开注册表---->在注册表的工具栏的编辑中找到搜索按钮,输入XXX.ocx的名字XXX查找,就可以得到控件的classid三、在jsp页面嵌入控件:[html] view plain copy<body onunload="onunload()">      <form id="form1" runat="server">          <div>              <div style="margin: 0px auto; width: 591px; height: 478px; border: solid 2px blue;">                  <object id="AV_RealPlayX" style="width: 100%; height: 100%;" classid="CLSID:30209FBC-57EB-4F87-BF3E-740E3D8019D2" CODEBASE="<%=request.getContextPath()%>/XXX.OCX#version=65536">                  </object>              </div>  (codebase可以不添加,他主要是在网页访问时如果找不到控件,然后告诉浏览器去哪里下载。)然后你就可以根据id取到该对象,再用该对象调用其内置的方法。出现的问题:可能页面只显示一个叉,没有黑视频窗口,或者提示不支持该属性方法之类的。     开始自己也遇这一大堆错误,后来在ie6运行成功。所以发现是浏览器问题。解决方法:打开网页的Internet选项,选择安全标签,将http://localhost或者http:127.0.0.1(就是你访问该jsp的地址)加入到信任站点。然后设置安全级别,点击自定义,将activex的所有禁止改成提示或者启用,试下能不能看到视频了吧,如果还不能,就将本地和Internate的安全级别也改了(我那时就改了,而我同事的不用,= =|||),到这就ok了。
<!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"><head>    <title>测试ocx</title>    <script type="text/javascript">        function getSSRockKey() {            var objSSRock = document.getElementById("SSRockeyNet");            var rtVal = objSSRock.StartRockeyCtrl();            if (rtVal > 0) {                var errInfo = _Default.GetSSRockErrInfo(rtVal).value;                document.getElementById("hdnLastErrInfo").value = "读取失败!错误信息:" + errInfo;                return "";            }else {                var a=objSSRock.RockeyBufferInfo;var aa=objSSRock.InitRockey('PM040449');var c=objSSRock.RockeyHID;alert(c);}        }    </script></head><body>    <div id="divSSRock" > <object id="SSRockeyNet" classid="clsid:4BE792DD-C27D-4676-89FA-D7630FF475A3" codebase="C:/Windows/SysWOW64/SSRockeyNetCtrl.ocx"           hspace="0" name="SSRockeyNet" style="width: 74px; height: 67px"> </object>        <input  type="button" value="确定"   onclick="getSSRockKey()"/></div></body></html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: