JAVA怎么调用OCX控件

需要通过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
  1. <body onunload="onunload()">  
  2.     <form id="form1" runat="server">  
  3.         <div>  
  4.             <div style="margin: 0px auto; width: 591px; height: 478px; border: solid 2px blue;">  
  5.                 <object id="AV_RealPlayX" style="width: 100%; height: 100%;" classid="CLSID:30209FBC-57EB-4F87-BF3E-740E3D8019D2" CODEBASE="<%=request.getContextPath()%>/XXX.OCX#version=65536">  
  6.                 </object>  
  7.             </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="确定"   οnclick="getSSRockKey()"/>
	</div>
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值