本文转载自: https://www.cnblogs.com/xgw2004058/archive/2009/07/28/1532993.html 作者:xgw2004058 转载请注明该声明。

原地址:http://blog.joycode.com/kaneboy/archive/2004/11/03/37889.aspx
有朋友询问如何在Web页面上做到像SharePoint中的效果一样,能直接激活客户端的Word来打开.doc文件,而不是类似直接点击.doc文档链接时Word在IE中被打开那样。想想这个问题应该很多人都会感兴趣,所以干脆写一篇blog来大致描述一下方法。

在安装Office2003以后,有一个ActiveX控件被安装到了系统中,这个控件位于“Program Files\Microsoft Office\OFFICE11\owssupp.dll”。通过这个控件,客户端页面上的JavaScript就可以激活本地的Office软件,来实现打开、编辑Office文档。(另,Office XP应该就已经包含这个ActiveX控件了。)

首先,用Script创建一个本地的对象:

openDocObj = new ActiveXObject("SharePoint.OpenDocuments.2"); // 为了兼容Office XP,可以创建“SharePoint.OpenDocuments.1”

然后,调用openDocObj的相应的方法。比如打开服务器上的一个Office文档:

openDocObj.ViewDocument("http://www.abc.com/documents/sample.doc");

openDocObj对象会根据参数中不同的Office文档类型(.doc、.xls、.ppt)来打开不同的程序(Word、Excel、PowerPoint)。ViewDocument()方法还有一个重载签名,可以让我们手工指定激活哪个程序来打开文档:

openDocObj.ViewDocument("http://www.abc.com/documents/sample.doc", 要激活的程序的ProgID);

那么要打开Office程序在线编辑文件又如何?

openDocObj.EditDocument("http://www.abc.com/documents/sample.doc");

就可以直接激活Word,在Word里面编辑文档,然后直接点击Word里面的保存功能,就可以将文件保存会服务器上了。注意:为了让Word能将编辑后的文档直接保存会服务器,访问Web站点的当前上下文的Windows Identity必须对服务器的相应目录(即“http://www.abc.com/documents”这个虚拟目录所对应的服务器上的物理路径)有相应的写权限,否则保存动作会失败。编辑完成后,EditDocument()会返回一个bool值,来反映编辑操作是否成功。

我们还可以通过打开服务器上的一个文档模版,来创建一个新的文档:

openDocObj.CreateNewDocument("http://www.abc.com/documents/sampleTemplate.dot", "http://www.abc.com/documents/");

就可以使用“http://www.abc.com/documents/sampleTemplate.dot”这个模版来创建一个新的文档,默认新文档的保存地点是“http://www.abc.com/documents/”。创建新文档时使用的程序取决于模版文件的类型(比如.dot模版会对应Word)。新文档的保存同样需要注意权限问题。CreateNewDocument()方法同样会返回一个bool值来反映操作是否成功。

CreateNewDocument()方法的第一个参数,除了可以使用一个模版的地址外,还可以直接指定为希望用来创建新文档的客户端程序的ProgID。

注意:
Windows 2003由于缺省没开放WebDAV协议,限制了Office文档的保存.
开放WebDAV方法如下:
1.打开IIS6
2.打开Web Service扩展
3.选中WebDAV,右键,选Allowed

轻松实现Word在线编辑相关推荐

  1. java word编辑_java实现word在线编辑及流转

    [实例简介] java开发web办公系统,调用PageOffice组件实现word在线编辑及流转 [实例截图] [核心代码] worddemo ├── worddemo │   ├── css │   ...

  2. gridfs文件服务器,OWA实现Word在线编辑(以GridFs存储文件)

    OWA全称Office Web App,是用来做Office文档预览的一个很好的工具,通过一些配置文件的设置还可以实现Excel.PowerPoint的在线编辑功能,但对Word在线编辑并不支持.Gi ...

  3. 【vue2+onlyoffice】word在线编辑保存

    前言 需要实现word文档的编辑和保存功能,之前写了一篇选方案的. 现在就按照onlyoffice开始实现.[没有使用到多人协同] 正文 1.后端部署(忽略),后端给我了一个地址之后,我运行了一个de ...

  4. 【资源】HTML5工具篇:10个营销人也能轻松使用的在线编辑平台

    一 3, 2015 in 资源 作者:Teeya 2014年,HTML5 页面作为营销界新宠儿,"多快好省"的杰出代表,其灵活性高.开发成本低且制作周期短的种种特性使其在移动营销领 ...

  5. java word 在线编辑图片_java开发实现word在线编辑及流转

    OA公文流转系统主要用于处理企业日常工作中内外部的各种公文,包括了公文的拟稿.审批.传阅.公告.归档,多层上级可以对下级撰写的公文进行逐级审批或修改,待最高级人员确认无误后即可进行核稿和发文等操作,最 ...

  6. JAVA清稿word_java开发实现word在线编辑及流转

    OA公文流转系统主要用于处理企业日常工作中内外部的各种公文,包括了公文的拟稿.审批.传阅.公告.归档,多层上级可以对下级撰写的公文进行逐级审批或修改,待最高级人员确认无误后即可进行核稿和发文等操作,最 ...

  7. C# .net MVC 实战项目 使用wangEditor实现word在线编辑 + 导出到word文档(解决html图片导出到word是个大红叉问题) (六)

    经过各方面的资源查询和不懈的研究,困扰本人一个多星期的问题终于解决. 先上效果图 添加一些文本和图片 点击确认提交,将内容添加到word并下载 打开 提示.警告: 一开始找到使用 Aspose.Wor ...

  8. java开发实现word在线编辑及流转

    OA公文流转系统主要用于处理企业日常工作中内外部的各种公文,包括了公文的拟稿.审批.传阅.公告.归档,多层上级可以对下级撰写的公文进行逐级审批或修改,待最高级人员确认无误后即可进行核稿和发文等操作,最 ...

  9. Springboot整合PageOffice 实现word在线编辑保存。

    一.查看官网 http://www.zhuozhengsoft.com/ 点击首页下载,进入页面: 最新得5.2,我们就下载5.2版本进行测试. 二.查看下载包 Samples5 为示例文件.放入to ...

  10. java实现word(docx)在线编辑(word转html,html转word)——解读document.xml结构

    前言 java web的word在线编辑实现过程可以分解为两步: 将word转为html 将前台修改完的html转为word文档 注:只支持docx文档,即word2007 一.查看docx文件结构 ...

最新文章

  1. 老齐学python的django 源代码_《跟老齐学Python:Django实战》真正的手把手“带”您学习...
  2. Leaflet-Develop-Guide
  3. 2021年春季学期-信号与系统-第二次作业参考答案-第十小题
  4. 计算机基本组成: 触发器
  5. Python高阶函数(map,reduce,filter)
  6. JavaScript调用服务器事件
  7. Membership学习(三)Membership Providers介绍[xgluxv]
  8. leetcode 1370. 上升下降字符串
  9. oracle sga pga mysql_oracle实例内存(SGA和PGA)调整-xin
  10. 交流充电桩电路图_直流充电桩和交流充电桩给电动汽车充电过程中是如何工作的?...
  11. windows Tracert命令
  12. 大学计算机专业绩点在3.5算好,大学绩点3.5算什么水平 绩点低有哪些补救方法...
  13. bootstrap 4 自动水平居中
  14. JVM、JRE、JDK、Java SE、Java EE、Java ME
  15. pert计算公式期望值_PERT方法—用于计算各工序和工时的方法
  16. 关于查询界面渲染问题
  17. 系统迁移到ssd 开启哪些服务器,如何使用分区助手完美迁移系统到SSD固态硬盘...
  18. 以太坊公链节点连接节点超时问题排查
  19. postfix反垃圾邮件说明
  20. 单片机复位电路的简谈

热门文章

  1. html密码查看器,浏览器密码查看工具(WebBrowserPassView)
  2. STC89C52RC的AD7705读写实验(软件SPI)
  3. 鼠标右键菜单及图标添加
  4. 函数----ModifyStyle
  5. js下载activex
  6. 学习笔记(01):Linux操作系统入门培训_Linux/Unix基础培训教程视频课程-01.Linux入门培训之_软硬件平台介绍...
  7. Linux下的虚拟光驱和虚拟软驱
  8. 某在线学习平台自动挂视频
  9. 程序猿崛起2——互联网时代下的新潮流和新活法
  10. 从零实现加密隧道(二):socks5 协议详解