Lodop

来源:互联网 发布:王师傅c语言 编辑:程序博客网 时间:2024/06/10 08:37

Lodop发布包内主要有如下几个文件:

install_lodop.exe

该文件是控件安装和升级的主文件,提供给用户或开发者下载安装,如果不特意拦截一般都能100%安装,对“网页插件安装难”有一定改善。如果将其复制或改名为uninstall_lodop.exe (名前加un)就可用其卸载控件。

Lodop安装后,在操作系统目录WINDOWS\system32下会安装两个实体文件:CAOSOFT_WEB_PRINT_LODOP.OCX和NPCAOSOFT_WEB_PRINT_lodop.dll,前一个文件是OCX文件,后者是Npplugin文件,其作用是实现多浏览器支持。目前Lodop支持IE系列、IE内核系列(遨游、360、世界之窗、腾讯TT、搜狗等)浏览器,以及Firefox(火狐)系列、Chrome(谷歌)系列、Opera系列、Safari系列等Windows下几乎所有的浏览器。

程序文件有几个预定参数:

-waitXX 该参数设置安装程序运行完毕后自动关闭窗口,这里的XX表示关闭前等待的秒数,如果是0秒则安装(或卸载)成功后立即关闭,例如: –wait8

-nowindow 该参数设置安装程序运行时不出现窗口。

-un       该参数使程序执行卸载操作,参数优先于文件名。

-in       该参数使程序执行安装操作,参数优先于文件名。

LodopFuncs.js

该文件是用来引导安装控件的一个JS文件,是个样例,但建议直接采用。其中getLodop的任务是判断浏览器的类型并决定采用哪个对象实例,并检测控件是否安装、是否最新版本、并引导安装或升级。文件内容如下:

  

function getLodop(oOBJECT,oEMBED){

 

         var strHtml1="<br><font color='#FF00FF'>打印控件未安装!点击这里<a href='install_lodop.exe'>执行安装</a>,安装后请刷新页面或重新进入。</font>";

 

         var strHtml2="<br><font color='#FF00FF'>打印控件需要升级!点击这里<a href='install_lodop.exe'>执行升级</a>,升级后请重新进入。</font>";

 

         var strHtml3="<br><br><font color='#FF00FF'>(注:如曾安装过Lodop旧版附件npActiveXPLugin,请在【工具】->【附加组件】中先卸载它)</font>";

 

         var LODOP=oEMBED;       

 

     try{          

 

          if  (navigator.appVersion.indexOf("MSIE")>=0) LODOP=oOBJECT;

 

 

 

          if ((LODOP==null)||(typeof(LODOP.VERSION)=="undefined"))  {

 

            if  (navigator.userAgent.indexOf('Firefox')>=0)

 

                document.documentElement.innerHTML=strHtml3+document.documentElement.innerHTML;

 

            if  (navigator.appVersion.indexOf("MSIE")>=0)  document.write(strHtml1); else

 

            document.documentElement.innerHTML=strHtml1+document.documentElement.innerHTML;

 

          } else if  (LODOP.VERSION<"6.0.0.1") {

 

            if  (navigator.appVersion.indexOf("MSIE")>=0)  document.write(strHtml2); else

 

            document.documentElement.innerHTML=strHtml2+document.documentElement.innerHTML; 

 

          }

 

          //*****如下空白位置适合调用统一功能:*********

 

 

 

           //*******************************************

 

          return LODOP;

 

     }catch(err){

 

           document.documentElement.innerHTML="Error:"+strHtml1+document.documentElement.innerHTML;

 

          return LODOP;

 

     }

 

}

 

其中的关键点是VERSION函数,Lodop提供了这个“读版本号”功能,这样控件的安装和升级任务就交给JS来实现,以下是控件在页面内的调用代码,其中包含getLodop的使用:

  

<head>

 

<title></title>

 

<script language="javascript"  src="LodopFuncs.js"></script>

 

<object  id="LODOP"  classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" width=0  height=0> 

 

<embed  id="LODOP_EM" type="application/x-print-lodop" width=0  height=0></embed>

 

</object>

 

</head>

 

<body>

 

<script language="javascript">

 

var  LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));

 

</script>

 

 

</body>

 以上两段代码相互配合实现了Lodop的安装、调用和升级。之所以将LodopFuncs.js作为一个资源文件来部署,既可以利用浏览器的缓存减少页面内容的重复下载,同时还实现了控件发布统一管理,整个应用系统中只要这一个地方发布Lodop。其它页面直接拷贝嵌入第2段代码就可以了。
原创粉丝点击