我们假设我有一个支持WebDAV的服务器,我有一堆Office文档。我想生成一个链接到文档的网页,点击该链接将打开Microsoft Word。 Word将从WebDAV服务器下载文档,当用户完成编辑文档时,MS Word会将其上传回来。
我知道MS Word(和其他Office程序)支持编辑存储在WebDAV服务器上的文档。我不知道的是,如何生成链接,这将触发MS Word单独下载此文档。
有可能吗?也许使用一些特殊的方案?
答案 0 :(得分:52)
<a href="ms-word:ofe|u|http://some_WebDav_enabled_address.com/some_Word_document.docx">Open Document in Word</a>
与上述答案的不同之处在于,这将不再需要ActiveX,它至少可以在IE 8 +,Chrome和Firefox中使用,只要它是从Windows机器打开的,用于Office 2010+(不是100)虽然确定这一点。%。
说明:ms-word:ofe
部分是安装Office时安装在客户端计算机上的协议。我不确切知道|u|
部分的作用。
答案 1 :(得分:11)
Confluence使用SharePoint.OpenDocuments ActiveX控件的EditDocument方法。
Javascript中的示例:
new ActiveXObject("SharePoint.OpenDocuments.1").EditDocument("http://example.com/test.doc")
答案 2 :(得分:5)
据我所知,实现此目的的唯一方法是通过ActiveX显式实例化Word,并将URL传递给它。
这可以在HTML页面内部进行(在其中需要IE),或者使用外部应用程序,然后需要为新的mime类型注册(例如,请参阅http://greenbytes.de/tech/webdav/rfc4709.html#rfc.section.B.1)。
答案 3 :(得分:0)
我发现Confluence可以做到这一点。他们有特殊的Firefox插件,但它应该可以正常使用Internet Explorer。
事实上,当我开始使用它时,事实证明IE确实直接从WebDAV打开文档。似乎IE下载了该页面,将其传递给MS Word,但与URL一起传递。然后MS Word可以保存文件(好吧,有时它会将文件视为只读,并且不允许保存,但允许以不同的名称上传)。
仍在调查。