WebOffice开发系列指南
- 格式:doc
- 大小:90.00 KB
- 文档页数:14
WebOffice开发系列指南
WebOffice开发系列01-自动下载安装组件(B/S)
WebOffice开发系列02-如何打开文件
WebOffice开发系列03-修订留痕
WebOffice开发系列04-安全控制
(防止复制、打印、保存)
WebOffice开发系列05-菜单控制
WebOffice开发系列06-自定义工具栏 (添加工具栏按钮、调节工具栏颜色)
WebOffice开发系列08-文件上传到服务器
WebOffice开发系列09-其他功能-全屏-VBA
webOffice控件自动下载是指在打开网页时,网页会自动把webOffice控件下载下来,从而可以将word、excel嵌入到网页中。控件自动下载的相关代码如下:
< object id=WebOffice height=768 width="100%"
style="LEFT: 0px; TOP: 0px" classid="clsid:E77E049B-23FC-4DB8-B756-60529A35FAD5"
codebase="../js/WebOffice1.ocx#version=6,0,4,0">
上面的脚本意思是: 自动更新classid= FF1FE7A0-0578-4FEE-A34E-FB21B277D561 的COM组件,
更新地址为 ../js/WebOffice1.ocx,codebase后的路径为相对路径也可为绝对路径,要更新的最新版本为6,0,4,0。
此时,IE会自动访问注册表,如果发现当前机器未安装或者当前版本低于6,0,4,0,就会自动下载。
WebOffice开发系列02-如何打开文件
单击打开文件按钮,可以在webOffice中打开文件,具体操作如图所示:
1004291534911966484dcfde21.jpg
打开文档的接口为LoadOriginalFile,其接口描述如下:
原 型: long LoadOriginalFile(BSTR pcFileNameOrUrl, BSTR pcType);
功 能:新建、装载Office文档
参 数:
pcFileNameOrUrl:
要装载文件的本地路径或者URL,值为空表示新建文档,如果是在Http的Web环境下,可以传相对路径.
pcType:
doc:打开、新建Word文件
xls:打开、新建Excel文件
ppt:打开、新建PPT 文件 wps:打开、新建WPS 文件
返回值:
为 0:失败
非0:成功
示 例:
// 通过URL打开一个服务器文件,getdoc.asp代码见演示文件
document.all.WebOffice1.LoadOriginalFile("http://127.0.0.1/getdoc.asp?id=8",
"doc");
// 通过URL打开一个服务器文件,相对路径
document.all.WebOffice1.LoadOriginalFile("/getdoc.asp?id=8", "doc");
document.all.WebOffice1.LoadOriginalFile("./getdoc.asp?id=8", "doc");
// 新建Excel
document.all.WebOffice1.LoadOriginalFile("", "xls");
==================特别注意===============================
建议在NotifyCtrlReady 事件中调用 LoadOriginalFile 接口,否则有可能出现Word窗口脱离IE界面的问题。
WebOffice1_NotifyCtrlReady(){
document.all.WebOffice1.LoadOriginalFile("", "doc");
}
您没有权限查看这个主题的附件。
hangel
帖子: 10
注册: 2010-07-12 10:39
页首
WebOffice开发系列03-修订留痕
由 hangel » 2010-07-12 11:38
webOffice对文档的修订操作提供了丰富的接口,其接口为:document.all.WebOffice1.SetCurrUserName("user_name");
文档操作的具体步骤如图所示,先以Test用户身份对文档进行编辑,如图所示: 10042915368ed41a99e4cc92ba.jpg
编辑完成上传后,其他用户如果想修订文档可以单击“修订文档”的按钮,接口为:
// 开始修订
document.all.WebOffice1.SetTrackRevisions(1);
// 接受修订
document.all.WebOffice1.SetTrackRevisions(4);
编辑文档的时候字体会针对不同的用户显示不同的颜色,如下图所示:
10042915369c8f50cabf3a5c18.jpg
单击“显示修订”会显示所有其他用户的修改和删除的操作,单击“隐藏修订”时就会隐藏所有的修订,
文档文字的颜色会变成同原文档的文字一样,而且删除的横线也会去掉,其接口如下:
// 隐藏修订
document.all.WebOffice1.ShowRevisions(0);
// 隐藏修订
document.all.WebOffice1.ShowRevisions(0);
如下图所示:
10042915369c8f50cabf3a5c18.jpg
单击“接受所有修订”则文档的修订就会生效,否则单击“拒绝所有修订”文档的所有修订失效,文档内容和初稿内容一致。
//接受当前所有修订信息
document.all.WebOffice1.SetTrackRevisions(4);
单击“获取修订信息”则会获取所有对文档进行修订的用户的相关信息及修订日期,接口描述如下:
原 型: BSTR GetRevInfo(long lIndex, long lType);
功 能:获取修订节点的信息(修订人,修订的时间,修订的动作)
参 数:
lIndex: 修订的节点编号
lType: 获取的信息编号
返回值:
示 例:
//1.获取修订的用户
vUserName = document.all.WebOffice1.GetRevInfo(i,0);
//2.获取修订的时间
vDate = new String(document.all.WebOffice1.GetRevInfo(i,1));
//3.获取修订的动作
var vRet = document.all.WebOffice1.GetRevInfo(i,2);
vRet == "1":表示"插入"的操作
vRet == "2":表示"删除"的操作 //4.获取修订的内容
vUserName = document.all.WebOffice1.GetRevInfo(i,3);
//总体的例子代码
var vCount;
vCount = document.all.WebOffice1.GetRevCount();
var vOpt = 0;
var vDate;
for(var i=1; i<= vCount; i++){
vOpt = document.all.WebOffice1.GetRevInfo(i,2);
if("1" == vOpt){
vOpt = "插入";
}else if("2" == vOpt){
vOpt = "删除";
}else{
vOpt = "未知操作";
}
vDate = new String(document.all.WebOffice1.GetRevInfo(i,1));
vDate = parseFloat(vDate);
dateObj = new Date(vDate);
alert(dateObj.getYear() + "年" + dateObj.getMonth() + 1 + "月" + dateObj.getDate()
+"日" + dateObj.getHours() +"时" + dateObj.getMinutes() +"分" + dateObj.getSeconds()
+"秒" );
alert("用户:"+document.all.WebOffice1.GetRevInfo(i,0) + "\r\n操作:" + vOpt +
"\r\n内容:" + document.all.WebOffice1.GetRevInfo(i,3));
}
100429153626ae947d8d6fde50.jpg
您没有权限查看这个主题的附件。
hangel
帖子: 10
注册: 2010-07-12 10:39
页首
WebOffice开发系列04-安全控制 (防止复制、打印、保存)
由
hangel » 2010-07-12 11:41
Weboffice可以对word文档实行全面的安全控制,增强了文档的安全性,用户在编辑文档后在输入框中输入密码,
然后单击“保护文档”,上传保存后别的用户则无法对文档进行编辑,需要输入正确的密码后才可编辑,接口描述如下:
原 型: long ProtectDoc(long lProOrUn, long lType, BSTR strPWD);
功 能:文档保护
参 数: