2009-07-07 11 views
1

Kann jemand dieses seltsame (oder normale) Verhalten erklären: Ich habe ein WebDAV-Verzeichnis. In diesem Ordner habe ich ein Word-Dokument mit dem Namen document.doc.webDAV/PHP - MS Word Dokument von HTML Anchor öffnen?

Wenn ich Word öffne und dann "Open File" wähle und die ganze URL eintippe, http://server/webdav/document.doc, öffnet Word das Dokument einwandfrei. Änderungen, die ich mache, werden mit einem Klick gespeichert.

Nun, wenn ich eine HTML-Seite mit einem Anker zu diesem Dokument wie folgt machen:

<a href="http://server/webdav/document.doc">Edit document</a> 

Es wird das Dokument öffnen, ganz gut, aber öffnet in Read-Only-Modus!

Die Untersuchung legt nahe, dass wenn Sie Word zum Öffnen der Datei verwenden, es auch als WebDav-Client funktioniert. So wird es die entsprechenden Header senden, um die Datei usw. zu sperren. Wenn Sie es von einem Anker aus aufrufen, lässt Ihr Browser das GET ablaufen. Dann wird das Dokument (heruntergeladen ??) an Word übergeben. Word führt einige HTTP-Aufrufe für die Datei aus, aber kein LOCK und so.

Hat jemand eine Idee, wie ich das lösen kann? Ich könnte etwas PHP-Code schreiben, um die HTTP-Aufrufe auszuführen und so, aber wie bekomme ich es dann in Word?

+0

Ich habe mit dem gleichen Problem gekämpft. Ich verwende ActiveXObject in unserem Javascript für unsere IE-Clients. Wir bieten Word-Dateien aus unserer Datenbank an, daher haben wir einen WebDav-Server mit den unterstützten LOCK/UNLOCK/PROPFIND/etc-Methoden implementiert. Das hat früher funktioniert und jetzt hat es aufgehört, weshalb es für uns so verwirrend/schwierig ist. –

Antwort

1

Ich würde nicht erwarten, dass dies möglich ist. Wenn Sie es über Ihren Webbrowser öffnen, laden Sie zuerst eine Kopie herunter, die dann in einem temporären Ordner gespeichert und dann an ein anderes Wort übergeben wird. Was Sie suchen, ist das Öffnen des Dokuments. Also, was Sie tun müssten, ist der Link öffnen Wort und übergeben Sie es einen Parameter. Ein sehr hässlicher Hack wäre, php zu haben, um lesbare Dateien zu generieren, die das gewünschte Webdav-Dokument öffnen. Sie könnten dies mit Makros tun, aber a) Sie müssten Ihre Makrosicherheitseinstellungen in Wort und b) reduzieren, Sie könnten sich nie darauf verlassen, dass andere dies getan haben (daher ist es nur eine Lösung für Sie).

1

Siehe this Frage. Im Grunde verwenden Sie ein bisschen Javascript, das ein ActiveX-Objekt aufruft, das Teil von Microsoft Sharepoint ist.

0

IIRC, Confluence (Atlassian) hat ein WebDAV-Add-In für Firefox, das dies erreicht (Öffnen eines Dokuments in Word im WebDav-Modus durch Klicken auf einen Link im Browser). Ich bin mir nicht sicher, wie es gemacht wird.

Verwandte Themen