Dans mes pages Web de documentation, je dois souvent fournir des liens vers des emplacements, des fichiers et des applications (.xbap) stockés sur l'intranet.
Dans IE, cela fonctionne bien avec les URL formatées comme ceci:
<a href="file://///company.org/ProjectA/StatsReport">Go to folder</a>
<a href="file://///company.org/ProjectA/Readme.txt">Download file</a>
<a href="file://///company.org/ProjectA/Dashboard.xbap">Run xbap</a>
Ces liens fonctionnent tous bien sous IE, mais pas avec Firefox.
Est-ce que quelqu'un sait comment je peux formater les liens ci-dessus pour qu'ils fonctionnent à la fois dans IE et Firefox?
Edit Le lien ci-dessus fonctionne réellement si je les mets dans un fichier local. Ils cessent de fonctionner uniquement dans Firefox lorsqu'ils font partie d'un fichier HTML sur le réseau (pas sur ma machine). Il doit exister un type de paramètre de sécurité dans Firefox empêchant les liens fichier: /// de fonctionner avec du contenu externe?
Vous pouvez vérifier ce lien , ou vous pouvez essayer d’utiliser des chemins UNC.
juste utiliser
file:///
fonctionne dans IE, Firefox et Chrome autant que je peux dire.
voir http://msdn.Microsoft.com/en-us/library/aa767731(VS.85).aspx pour plus d'informations
protocole de fichier
Ouvre un fichier sur un lecteur local ou réseau.Syntaxe
Copy file:///sDrives[|sFile] Tokens
sDrives
Spécifie le lecteur local ou réseau.sFile
Optionnel. Spécifie le fichier à ouvrir. Si sFichier est omis et que le compte accédant au lecteur est autorisé à parcourir le répertoire, une liste des fichiers et répertoires accessibles est affichée.Remarques
Le protocole de fichier et le paramètre sDrives peuvent être omis et remplacés par la seule représentation en ligne de commande de la lettre du lecteur et de l'emplacement du fichier. Par exemple, pour parcourir le répertoire Mes documents, le protocole de fichier peut être spécifié en tant que fichier: /// C |/Mes documents/ou en tant que C:\Mes documents. De plus, un simple '\' équivaut à spécifier le répertoire racine sur le lecteur local principal. Sur la plupart des ordinateurs, c'est C :.
Disponible à partir de Microsoft Internet Explorer 3.0 ou version ultérieure.
Remarque Internet Explorer 6 Service Pack 1 (SP1) n'autorise plus la navigation sur un ordinateur local à partir de la zone Internet. Par exemple, si un site Internet contient un lien vers un fichier local, Internet Explorer 6 SP1 affiche une page vierge lorsqu'un utilisateur clique sur le lien. Les versions précédentes de Windows Internet Explorer suivaient le lien vers le fichier local.
Exemple
L'exemple suivant illustre quatre manières d'utiliser le protocole de fichier.
Copie
//Specifying a drive and a file name. file:///C|/My Documents/ALetter.html //Specifying only a drive and a path to browse the directory. file:///C|/My Documents/ //Specifying a drive and a directory using the command line representation of the directory location. C:\My Documents\ //Specifying only the directory on the local primary drive. \My Documents\
Au moins avec Chrome, (je ne sais pas pour Firefox). Vous pouvez faire glisser l’icône située à gauche de l’URL du navigateur dans un dossier situé sur votre bureau pour créer un fichier qui se comporte comme un raccourci Internet.
Je ne sais pas encore si le format de fichier est universel, mais Chrome semble savoir quoi faire avec.
Le fichier produit est un fichier .url
et contient les éléments suivants:
[InternetShortcut]
URL=http://www.accordingtothescriptures.org/prophecy/353prophecies.html
Vous pouvez remplacer l'URL par tout ce que vous souhaitez.
Si quelqu'un d'autre trouve ce sujet en utilisant localhost
dans l'URI du fichier - Internet Explorer agit de manière totalement différente si le nom d'hôte est localhost
ou 127.0.0.1
- si vous utilisez le nom d'hôte réel, cela fonctionne correctement (à partir de sites de confiance/zone intranet).
Une autre grande différence entre IE et FF - IE convient à un uris comme file://server/share/file.txt
mais FF nécessite des barres obliques supplémentaires file:////server/share/file.txt
.
Coller le lien suivant directement sous l'événement du clic sur le lien, sinon, utiliser javascript pour appeler le code après la fonction
Protected Sub lnkOpen_Click(ByVal sender As Object, ByVal e As EventArgs)
System.Diagnostics.Process.Start(FilePath)
End Sub