设为首页
加入收藏
站内地图
旧版入口
当前位置:首页 > 站长学院 > 网络编程 > ASP

iWebOffice2004调用VBA脚本解释及翻译

作者:佚名 出处:网络转载 时间:06-11 点击:

内容载入中...
 

iWebOffice2004 是一个实现痕迹保留、手写签名、电子印章的插件,已经被100多个

单位使用,将其调用部分Office VBA代码整理如下:

来自 http://www.goldgrid.com

<script language=javascript>
//系统变量
var vFileName=""; //打开的文件名
var vObject=null; //打开的对象
var gFileName=""; //文件名
var gObject=null; //对象
var gOpened=false; //是否被打开
var gUserName=""; //系统用户
</script>


<script language="JScript" for=WebOffice event="OnDocumentOpened(vFileName,vObject)">
 OnDocumentOpened(vFileName,vObject); //打开文件事件
</script>

<script language="JScript" for=WebOffice event="OnDocumentClosed()">
 OnDocumentClosed();   //关闭文件事件
</script>

<script language=javascript>
//打开文档,根据用户权限(EditType),进行初始化设置
function OnDocumentOpened(vFileName,vObject) 
{
  var mProtect,mTools,mTrack,mPrint,mShow;
  gFileName=vFileName;    //取得全局文件名
  gObject=vObject;    //取得全局对象
  //设置痕迹和保护状态
  if (webform.WebOffice.EditType=="0"){
 mProtect=true;
 mTools=false;
 mTrack=false;
 mPrint=false;
 mShow=true;
  }else if(webform.WebOffice.EditType=="1"){
 mProtect=false;
 mTools=false;
 mTrack=false;
 mPrint=false;
 mShow=false;  
  }else if(webform.WebOffice.EditType=="2"){
 mProtect=false;
 mTools=false;
 mTrack=true;
 mPrint=true;
 mShow=true;
  }else if(webform.WebOffice.EditType=="3"){
 mProtect=false;
 mTools=true;
 mTrack=true;
 mPrint=true;
 mShow=true;
  }else{
 var mType="";
 var mEdit=webform.WebOffice.EditType;
 var mIdx=mEdit.indexOf(",");
 if (mIdx>0){
     mType=mEdit.substring(0,mIdx);
 }
 mEdit=mEdit.substring(mIdx+1,mEdit.length);

 mIdx=mEdit.indexOf(",");
 if (mIdx>0){
     mType=mEdit.substring(0,mIdx);
     if (mType=="1") mProtect=true;
     if (mType=="0") mProtect=false;
 }
 mEdit=mEdit.substring(mIdx+1,mEdit.length);

 var mIdx=mEdit.indexOf(",");
 if (mIdx>0){
     mType=mEdit.substring(0,mIdx);
     if (mType=="1") mShow=true;
     if (mType=="0") mShow=false;
 }
 mEdit=mEdit.substring(mIdx+1,mEdit.length);

 var mIdx=mEdit.indexOf(",");
 if (mIdx>0){
     mType=mEdit.substring(0,mIdx);
     if (mType=="1") mTrack=true;
     if (mType=="0") mTrack=false;
 }
 mEdit=mEdit.substring(mIdx+1,mEdit.length);  

    var mIdx=mEdit.indexOf(",");
 if (mIdx>0){
     mType=mEdit.substring(0,mIdx);
     if (mType=="1") mPrint=true;
     if (mType=="0") mPrint=false;
 }
 mEdit=mEdit.substring(mIdx+1,mEdit.length);  
 
    var mIdx=mEdit.indexOf(",");
 if (mIdx>0){
     mType=mEdit.substring(0,mIdx);
     if (mType=="1") mTools=true;
     if (mType=="0") mTools=false;
 }
 
  }

  if (webform.WebOffice.FileType==".doc"){
   gObject.TrackRevisions=mTrack;
  gObject.PrintRevisions=mPrint;
   gObject.ShowRevisions=mShow;

   gObject.CommandBars('Reviewing').Enabled =mTools;
   gObject.CommandBars('Reviewing').Visible =mTools;

   var mCount=gObject.CommandBars('Track Changes').Controls.Count;
         for (var mIndex = 1; mIndex<= mCount; mIndex++){
           var mCurID=gObject.CommandBars('Track Changes').Controls(mIndex).ID;
           if ((mCurID==1715) || (mCurID==1716) || (mCurID==2041) || (mCurID==305)) {
              gObject.CommandBars('Track Changes').Controls(mIndex).Enabled = mTools;
           }
         }
 if (mProtect){
    gObject.Protect(2);
 }
 if (gUserName == "") {
          //保存原来的用户
          gUserName=gObject.Application.UserName;
          //设置系统当前用户
document.getElementById('loading').style.display="none";

收藏本文:
】【打印页面】【推荐给朋友】【关闭窗口

站长学院

推荐信息