上一篇:动态创建TABLE的行与列 >>
如何在Web页面上直接打开、编辑、创建Office文档
在安装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。
下一篇:取得的IP/用户名等信息 >>
相关文章:
- · 如何获取设置图片大小
- · 按比例缩小图片(无组件)
- · 网站开发规范及流程v1.0
- · asp+存储过程的使用
- · 2个简单的检测外部提交函数
- · 查看服务器Application/Session变量工具
- · ASP ,IP地址分段计算
- · ASP提速技巧五则
- · 利用ASP远程获取内容
- · ASP漏洞及安全建议
- · 闰年的判别
- · 计算文件下载时间
- · ASP的函数详解
- · 一个取图片尺寸的类,支持jpg,gif,png
- · JS错误代码解释大全
- · 窗口最大化的严格定义
- · 一個簡單的驗証碼
- · 17种正则表达式
- · 一个非常简洁的验证码程序
- · 今天做了一个ASP计数器,放出源码吧,挺简单的!
- · 个性化的表单验证效果
- · 利用ASP得到图片尺寸大小
- · 如何处理ASP中的图象
- · 精华asp代码
- · ASP中的函数说明
- · FileCopy
- · 事务处理
- · ASP中得到用户的真实IP地址
- · ASP编程中15个非常有用的例子
- · InStrRev 函数
- · 新写的一个定时新闻小偷
- · 一段自动补位的函数(ASP)
- · VBS 中 Space 函数的应用
- · 游走于ASP与ASP.NET的郁闷
- · 用ASP的安全验证来对windows 2000的管理者密码进行在线修改
- · ADSI,使用ASP来完成NT管理
- · 被ASP的小问题难倒!
- · 域名查询系统--适合新手
