Impossible de charger la ressource locale: fichier

J'utilise le code ci-dessous pour créer un lien, quand je clique sur le lien dans IE, il fonctionne et je peux ouvrir l'URL mais pas Chrome.

Test<a href='#'onClick=window.open('file:\\160.53.112.171\myTest\cons\4.1\displayData.htm','_self') > 

Voici le message d'erreur affiché sur la console de Chrome.

Impossible de charger la ressource locale: fichier: fichier: /// C: /160.53.112.171myTestcons%04.1displayData.htm in chrome.

Pour quiconque atterrit ici et travaille dans asp.net:

J'avais le même problème (ne permettait pas de charger des ressources locales) dans tous les navigateurs sauf IE.

Ma solution de contournement était d'avoir l'ancre directement à un gestionnaire et d'inclure une chaîne de requête pour le chemin d'accès:

 <a href='handler.ashx?file=//server_name//dir//filename.pdf' /> 

Ensuite, le gestionnaire écrirait le fichier en tant que réponse (s'ouvre dans un nouvel onglet souhaité avec _self):

 public void ProcessRequest (HttpContext context) { if (context.Request["file"] != null && !String.IsNullOrEmpty(context.Request["file"].ToString())) { try { context.Response.Clear(); context.Response.ClearContent(); context.Response.ClearHeaders(); //whichever content type you're working with context.Response.ContentType = "application/pdf"; //encode the path when you set the href of the anchor, so decode it now string file_name = HttpUtility.UrlDecode(context.Request["file"].ToString()); context.Response.TransmitFile(file_name); } catch { } } } 

Lorsque vous essayez d'ouvrir un fichier avec FILE:\\\\ via javascript dans IE. IE ne vous permettra pas de l'ouvrir (ce qui est un comportement par défaut) en raison de certaines restrictions de sécurité. J'ai déjà rencontré ce problème de sécurité IE avant dans plusieurs projets. Vous pouvez essayer de modifier les paramètres de sécurité IE comme indiqué ci-dessous, mais ce n'est pas recommandé (puisque vous ne pouvez pas modifier chaque paramètre de l'utilisateur pour modifier le comportement).

Les paramètres suivants fonctionnent pour IE 8

Dans Internet Explorer, accédez à Outils → Options Internet → Avancé. Faites défiler jusqu'à la section Sécurité et cochez la case "Autoriser le contenu actif à exécuter sur les fichiers sur Poste de travail".

J'ai essayé ceci dans IE, Chrome et Firefox. Ça marche.

 <a href='#'onClick=window.open('displayData.html','_self') >Test</a> 

Je ne suis pas sûr, mais il se peut que la version de votre navigateur l'affecte. Veuillez mettre à jour la version de votre navigateur, puis réessayer.