Agence web » Actualités du digital » Windows 10 ne vous laissera toujours pas utiliser ces noms de fichiers réservés en 1974

Windows 10 ne vous laissera toujours pas utiliser ces noms de fichiers réservés en 1974

Windows «réserve» certains noms de fichiers et ne vous permet pas de les utiliser n’importe où. Oubliez d’appeler un fichier «con.txt» ou «aux.mp3». Tout cela à cause d’un choix fait en 1974 et de la soif de Microsoft pour une compatibilité descendante éternelle.

Noms de fichiers que vous ne pouvez pas utiliser

Microsoft fournit une liste officielle des noms de fichiers réservés, et les voici:

CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, ​​COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8 et LPT9

Notez que vous ne pouvez pas utiliser ces noms de fichiers avec une extension de fichier. Vous ne pouvez donc pas nommer un fichier «con.txt», «con.jpg», «ou« con.doc ». Et Windows n’est pas sensible à la casse, donc peu importe que ce soit CON, con ou CoN – Windows ne vous permettra pas d’utiliser ce nom.

Vous pouvez l’essayer vous-même. Essayez d’enregistrer un fichier sous le nom «con.txt» ou «lpt6.txt» dans le Bloc-notes. Ou essayez de renommer n’importe quel fichier avec l’un de ces noms dans l’Explorateur de fichiers. Windows ne vous laisse tout simplement pas le faire.

Bien entendu, Windows restreint également les noms de fichiers par d’autres moyens. Vous ne pouvez pas non plus utiliser divers caractères spéciaux comme les suivants dans les noms. Consultez la documentation officielle de Microsoft pour plus d’informations.

Que s’est-il passé en 1974 et pourquoi devrions-nous nous en préoccuper?

Comme @Foone récemment expliqué sur Twitter, ce problème remonte à 1974. Sous UNIX, «tout est un fichier». (La même chose est vraie dans les systèmes d’exploitation de type UNIX comme Linux aujourd’hui.) Les périphériques matériels étaient représentés à des chemins spéciaux comme / dev / lp0 pour la première imprimante et / dev / tty pour la console.

En 1974, ce même concept a été ajouté au système d’exploitation CP / M. Malheureusement, CP / M a été conçu pour les ordinateurs avec très peu de mémoire et sans disque dur. Il utilisait plusieurs disques et aucun répertoire, donc ces fichiers spéciaux représentant des périphériques apparaissaient effectivement partout, sur chaque disque.

Ainsi, lorsque vous enregistrez un fichier texte, vous pouvez demander à votre éditeur de texte de «l’enregistrer» sur l’imprimante, qui l’imprimera. Mais les éditeurs de texte et d’autres programmes comme l’ajout d’extensions de fichiers comme «.txt», donc CP / M a simplement ignoré l’extension de fichier pour ces fichiers de périphérique. En d’autres termes, si un éditeur de texte essaie d’enregistrer un fichier sous le nom du périphérique d’impression suivi de «.txt», CP / M suppose simplement qu’il fait référence au périphérique d’impression et ignore l’extension du fichier. Désormais, la fonctionnalité fonctionnait correctement dans chaque application – génial!

Bien sûr, c’est un sale hack, mais qui s’en soucie? Eh bien, CP / M a compris. Finalement, PC-DOS est arrivé, et il a conservé cette fonction CP / M utile. PC-DOS 2.0 a ajouté des répertoires en 1983, mais Microsoft a choisi de faire apparaître ces fichiers de périphérique dans tous les répertoires pour la compatibilité avec le logiciel DOS existant plutôt que de les placer dans un dossier de périphérique spécial.

Finalement, Windows 95 est arrivé, et il a été construit sur DOS. Windows NT n’était pas basé sur DOS, mais il voulait être rétrocompatible avec les applications Windows 95. Windows 10 est toujours basé sur Windows NT et fonctionne de la même manière. La même chose s’applique à Windows 7, bien sûr.

Maintenant, c’est plus de quarante ans plus tard et nous ne pouvons toujours pas nommer les fichiers «con.txt» ou «aux.mp3» parce que Windows veut rester compatible avec les anciens programmes qui pourraient utiliser cette fonctionnalité. C’est un bon exemple de l’intensité avec laquelle Microsoft s’engage à assurer la compatibilité ascendante.

Mettre à jour: On nous a dit que CP / M exigeait à l’origine un deux-points de fin – en d’autres termes, plutôt que «CON», vous deviez taper «CON:». Apparemment, le problème a peut-être vraiment commencé en 1981 avec la sortie de MS-DOS et PC-DOS, qui ont supprimé l’exigence de deux points. Sous DOS, vous pouvez utiliser «CON» au lieu de «CON:». Alors peut-être que DOS est plus à blâmer pour cela que CP / M.

★★★★★