2010-05-25 3 views
5

Egal was ich tue, ich nicht entweder dieser lokalen Datei-URIs bekommen:Datei-URI Link zu lokalen Ordner in IE7 nicht funktioniert

<a href="file:///c:/">x</a> 
<a href="file:///C:">x</a> 
<a href="file:///C:\">x</a> 
<a href="file://C:">x</a> 
<a href="file:///C|/">x</a> 
<a href="file:///C|">x</a> 
<a href="C:\">x</a> 
<a href="C:">x</a> 
<a href="#" onclick="return window.open('c:\\');">#</a> 

... zu arbeiten. Ich habe versucht, die Site in verschiedene Zonen (lokales Intranet, vertrauenswürdige Sites) zu setzen, den geschützten Modus ein-/auszuschalten und an den Sicherheitseinstellungen für die aktive Zone zu fummeln. Ich habe auch viele Variationen der URI ausprobiert. Aber wenn ich auf die Links klicke, passiert nichts. Keine Fehler auch nicht.

Das einzige Arbeitsszenario ist, wenn die HTML-Datei von einer Datei geöffnet wird: /// Speicherort und hat Datei: /// Links darin. Offensichtlich ist dies keine große Hilfe.

Gibt es einen Workaround? Im Internet scheint es dazu viele widersprüchliche Informationen zu geben.

Antwort

5

Ihre Datei-URLs sind fehlerhaft. Es sollte sein:

file:///c:/folder/ 

Bitte beziehen Sie sich auf The Bizarre and Unhappy Story of File URLs.

Dies funktioniert für mich:

<html> 
<head></head> 
<body> 
    <a href="file:///c:/">link</a> 
</body> 
</html> 

Wenn Sie Link klicken, ein neues Windows Explorer-Fenster auf die angegebene Position geöffnet wird. Aber, wie Sie darauf hinweisen, funktioniert dies nur von einer file: // URL, um damit zu beginnen.

Eine detaillierte Erklärung der Vorgänge finden Sie unter here. Grundsätzlich ist dieses Verhalten für IE seit IE6 SP1/SP2 von Entwurf und die einzige Möglichkeit, die Sie ändern können, ist die explizite Deaktivierung bestimmter Sicherheitsrichtlinien, die Registrierungseinstellungen auf dem lokalen Computer verwenden.

Wenn Sie also ein IT-Administrator sind und dies für Ihr internes Unternehmens-LAN bereitstellen möchten, ist dies möglicherweise möglich (jedoch nicht ratsam). Wenn Sie dies auf einer generischen, öffentlich zugänglichen Website tun, scheint dies unmöglich.

+0

Entschuldigung, ich habe das auch versucht (siehe meine aktualisierte Frage). Außerdem habe ich mich geirrt, in mysteriöser Weise in anderen Browsern zu arbeiten; Ich war sicher, dass es in IE8 und IE6 unter Windows 7 funktioniert hat, aber ich kann nicht reproduzieren. Sehr merkwürdig. – Kakmonstret

+0

Was erwarten Sie, wenn Sie dies tun? IE unterstützt Shell-Views ab IE7 nicht. –

+0

Ich weiß nicht was Hostshellviews * bedeutet. Alles, was ich wirklich will, ist, dass der Explorer in einem bestimmten Ordner öffnet, wenn ein Benutzer auf einen Link klickt. Ich weiß, das war in der guten alten Zeit möglich. – Kakmonstret