Sous Windows, quelles extensions de nom de fichier désignent un exécutable?
Dénote quoi?
Je sais que cette question semble probablement un peu confuse pour le moment, mais la question est importante. Comme j'explique pourquoi c'est important, la question deviendra plus claire.
Bien que la réponse de Ken White à la variable PATHEXT (dans "l'environnement" de l'invite de commande) soit une réponse agréable et courte, et que cette réponse puisse bien fonctionner pour vous, la réponse est incomplète. La raison qui est incomplète est que la bonne réponse est différente selon ce que vous essayez de faire.
Par exemple, vous pouvez essayer de:
- Exécutez un programme à partir d'une "invite de commande traditionnelle" ("CMD"), en tapant son nom de fichier complet
- Exécutez un programme à partir d'une "invite de commande traditionnelle" ("CMD"), en tapant le nom de fichier de base, mais en laissant son extension
- Utilisez la commande "start" intégrée à l '"invite de commande traditionnelle" ("CMD")
- Exécutez un programme à partir de PowerShell
- Exécutez un programme à partir de l'élément de menu "Exécuter", qui se trouve dans le menu Démarrer
- Exécutez un programme à partir d'Explorer, en essayant de double-cliquer sur une icône liée à un fichier se terminant par l'extension
- Dites à Microsoft Internet Explorer d'ouvrir un fichier téléchargé
- Exécutez un programme à l'aide d'une fonction de l'API Microsoft Windows. (C'est quelque chose que les utilisateurs finaux ne font généralement pas, mais les programmeurs informatiques peuvent le faire, et les informations sont donc pertinentes pour eux.)
Certaines de ces méthodes d'exécution de programmes peuvent utiliser différentes méthodes pour déterminer quelles extensions de nom de fichier peuvent être prises en charge. En particulier, l'utilisation de CMD peut être différente de celle du menu Exécuter.
Par exemple, le blog déroutant de Wes: Customizing Windows Run Command ... note différents emplacements en cours de vérification, y compris la clé de registre.
La réponse peut également dépendre de la version de Microsoft Windows utilisée. Dans Windows 10, je viens de taper le nom d'un fichier zip à une invite de commande et il a ouvert l'Explorateur Windows. Je semble me souvenir que cela ne fonctionne pas dans Windows XP (bien que dans Windows XP, je pourrais taper "start filename.zip" et obtenir le même genre d'effet). Donc, soit ma mémoire est défectueuse, soit Microsoft a essayé d'apporter des améliorations dans les nouvelles versions de Windows. (J'espère, pour moi, ce dernier.)
Dans l'invite de commande traditionnelle de Windows 10 (exécutant "CMD"), lorsque je vais à l'emplacement (à l'aide de la commande "CD") d'un fichier zip et que je tape "nom_fichier.zip", le fichier s'ouvrira. Lorsque je vais à cet emplacement et que je tape "nom de fichier" (en laissant l'extension ".zip"), Windows ne trouve pas le fichier. Cependant, si je lance " ECHO %PATHEXT%
" puis " SET PATHEXT=%PATHEXT%;.ZIP
" (puis " ECHO %PATHEXT%
" à nouveau, pour m'assurer que j'ai eu l'effet souhaité), je peux taper "nom de fichier" et l'invite de commande trouvera le fichier .ZIP. C'est donc l'effet de la variable% PATHEXT%.
Vous pourrez peut-être voir une autre liste d'extensions en exécutant la ASSOC
commande. Par exemple, l'exécution de cette commande affiche plusieurs lignes de sortie, dont les suivantes (sur mon système) - " .zip=CompressedFolder
". Ensuite, je peux voir ce que cela fonctionne en tapant " FTYPE | FIND /I "CompressedFolder"
". (Cela est destiné à la ligne de commande traditionnelle. PowerShell n'aimera pas ces guillemets non échappés.) (Si vous tapez simplement " FTYPE
" sans le reste de cette ligne de commande, vous verrez beaucoup plus de résultats sur les autres extensions.)
Si je tape " ASSOC | FIND /C "."
" sur mon ordinateur Windows 10, je constate que j'ai 339 lignes de sortie lorsque je vérifie les associations de fichiers de cette façon.
MS KB 162059 consiste à ajuster la façon dont Internet Explorer ouvre les documents Office.
Donc, demander la liste des exécutables par défaut est trop vague. Différents composants de Microsoft Windows peuvent utiliser des ressources différentes, la question doit donc être plus spécifique pour une réponse précise.
La question mentionne l'utilisation de l'Explorateur pour double-cliquer sur une icône. Pour voir la liste des exécutables utilisés par cela, je pense que vous voudrez vérifier le registre. Vous pouvez l'exécuter à partir d'une invite de commande:
reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts
(Je ne vais pas les énumérer ici. Il y en a 286 sur mon ordinateur Windows 10.)
Cela répertorie les extensions. Pour voir plus d'informations, y compris des détails sur les extensions:
reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts /s
Donc, comme vous pouvez le voir maintenant, cette question apparemment innocente peut en fait être un sujet assez complexe. Je crois que j'ai expliqué pourquoi une question devrait être assez spécifique afin de pouvoir obtenir une réponse complète qui traite totalement de la façon dont un seul composant de Windows peut déterminer les extensions de nom de fichier. En un mot, il n'y a pas qu'une seule réponse pour Windows, car Windows a plusieurs composants qui se comportent de différentes manières. J'espère que j'ai commencé à le montrer et que j'ai indiqué quelques ressources supplémentaires qui montrent des informations pertinentes.