Windows met-il en cache le contenu des fichiers .url (Internet Shortcut)?

J’implémente un gestionnaire d’URL personnalisé dans .NET. Pour tester cela, j’ai créé quelques fichiers .url différents et les ai mis sur mon bureau. Cela fonctionne généralement bien, mais se comporte bizarrement si je modifie le contenu du fichier, en particulier l’ URL= ligne. Cela n’a aucun effet – l’ancienne URL continue à être ouverte. Renommer le fichier, cependant, fonctionne. Le fichier ressemble à ceci:

 [{000214A0-0000-0000-C000-000000000046}] Prop3=19,0 [InternetShortcut] URL=myCustomScheme://some/url/pointing/somewhere IDList= 

Tous les raccourcis que je crée via Nouveau → Raccourci reçoivent le même UUID.

Existe-t-il un cache de mappage de fichier / URL interne .url sous Windows?

Windows 7 Caches vos noms de fichiers et parfois, comme vous l’avez dit, les noms de fichiers à des emplacements spécifiques.

Lancez regedit et recherchez les éléments suivants

 HKEY_USERS\S-1-5-21-xxxx\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\MuiCache 

où S-1-5-21-xxxx est votre utilisateur actuellement connecté.

Vous pouvez voir que la plupart des fichiers (ou tous?) Ont été mis en cache et auxquels vous avez déjà accédé.

Vous pouvez peut-être également désactiver le MUICaching par programmation. Peut-être que ce site vous aide à: Désactiver la mise en cache

J’ai une raison de croire que les fichiers URL sont interprétés par certains composants d’Internet Explorer au moment de la création (pas biblique) . Ils ne sont interprétés initialement que lors de la première création du fichier. Toute modification ultérieure du fichier URL ne sera pas validée. C’est parce que le raccourci n’est pas stocké dans le fichier. C’est pourquoi le fichier peut être modifié ultérieurement pour qu’il devienne vide, car un fichier de 0 octet et le fichier URL sembleront fonctionner de toute façon. Les données de raccourci sont stockées dans le champ “Web Document” en tant que propriété de fichier dans le système de fichiers NTFS. Le fichier sert simplement à pointer vers lui. Vous pourrez peut-être modifier ces champs de propriété par programmation, ce qui supposerait de “modifier le fichier”. C’est un exercice douloureux juste pour éditer ce qui semble être un simple fichier texte.

De plus, une fois qu’un nom de fichier a été utilisé pour un fichier URL, il ne peut pas être réutilisé pour de nouveaux fichiers, quel que soit le disque ou le chemin sur lequel vous l’avez enregistré. Vous devez donc continuer à atsortingbuer des noms de fichiers uniques, jamais utilisés auparavant, pour chaque nouveau fichier URL que vous créez. Cela a à voir avec la façon dont Internet Explorer met en cache le contenu Web. Il se souvient des noms de fichiers déjà utilisés et les associe aux adresses URL précédemment définies. Pour réutiliser un nom (ou lorsque vous êtes à court d’idées pour des noms de fichiers nouveaux et uniques), vous devez effacer les fichiers Internet temporaires.

 Windows 7: %localappdata%\Microsoft\Windows\Temporary Internet Files Windows 8: %localappdata%\Microsoft\Windows\INetCache 

Pour répondre directement à votre question: oui, oui.

J’ai eu un problème similaire, et il s’avère que le coupable était Firefox.

Si par hasard votre navigateur Web est Firefox, vos répertoires de cache peuvent être corrompus.

Vous pouvez créer un nouveau profil ou tenter de nettoyer les choses avec C:\Users\\AppData\Local\Mozilla\Firefox\Profiles\\