Ordre de priorité de recherche de fichiers exécutable

Numéro d'article: 35284 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

Cet article présente suivantes :

  • Comment COMMAND.COM recherche les fichiers exécutables
  • L'ordre de priorité impliquée dans cette recherche
  • Comment la commande peut être remplacée dans MS-DOS versions 4.x et versions ultérieures
  • Appel de la différence entre la reconnaissance de nom de fichier COMMAND.COM et le système EXEC MS-DOS

Plus d'informations

COMMAND.COM

COMMAND.COM peut exécuter un fichier tapé sur la ligne de commande ou comme une ligne dans un fichier de commandes.

Versions de MS-DOS antérieures À la version 4.0

Lorsqu'un nom de fichier est spécifié, une extension est fournie ou non, COMMAND.COM maintient uniquement le nom de base. (COMMAND.COM Supprime l'extension de nom de fichier le cas échéant [par exemple, « FILE » reste si le nom de fichier est « FILE.EXE »]). Une fois qu'il a le nom de base, COMMAND.COM recherche dans l'ordre suivant d'un fichier exécutable qui porte ce nom :
   .COM  .EXE  .BAT
				
COMMAND.COM si ne peut pas trouver ce fichier dans le répertoire actuel du lecteur en cours, il commence à rechercher les répertoires spécifiés dans la variable d'environnement PATH dans le fichier Autoexec.bat. Si un tel fichier n'est trouvée, la message d'erreur suivant s'affiche :
Nom du fichier ou commande incorrect
Par exemple, s'il y a trois fichiers dans le répertoire en cours : FILE.COM, FILE.EXE, FILE.BAT et vous essayez d'exécuter l'une des en tapant FILE.COM FILE.EXE , FILE.BAT , ou fichier , COMMAND.COM exécute uniquement FILE.COM, car c'est le premier fichier qu'il trouve.

MS-DOS versions 4.0 et version ultérieures

Dans les versions de MS-DOS 4.0 et versions ultérieures, vous pouvez remplacer la priorité COM EXE BAT en tapant la commande avec l'extension.

Par exemple, s'il y a trois fichiers dans le répertoire en cours : FILE.COM, FILE.EXE, FILE.BAT et vous tentez d'exécuter l'une des en tapant FILE.COM , FILE.EXE , ou FILE.BAT , COMMAND.COM exécute celle que vous spécifiez. Toutefois, si aucune extension de nom de fichier n'est fournie, la habituel ordre de priorité est utilisée (.com, .exe et .BAT).

Un effet secondaire de ce comportement est que quelques méthodes incorrects ou pratique de l'exécution de fichiers fonctionnent plus. Par exemple, dans les versions de MS-DOS antérieures à 4.0, vous pouvez exécuter FILE.BAT en tapant le nom de fichier avec un point suit FILE. . Toutefois, dans MS-DOS 4.0 et versions ultérieures, si vous tapez FILE. , MS-DOS recherche pour un fichier en ce nom ne peut pas trouver un et renvoie un message d'erreur « nom incorrect commande ou du fichier ».

Versions de MS-DOS 5.0 et version ultérieures

Versions de MS-DOS 5.0 et ultérieures rechercher des fichiers dans l'ordre suivant :
   DOSKEY Macro  .COM  .EXE  .BAT
				
par exemple, s'il y a trois fichiers dans le répertoire en cours : FILE.COM, FILE.EXE et FILE.BAT et il est également une macro DOSKEY nommée fichier, la macro est donnée priorité et exécutée lorsque fichier est exécutez à partir de la ligne de commande du répertoire en cours. Cela est vrai dans les versions antérieures de MS-DOS, pas comme il ne était aucune fonctionnalité de macros DOSKEY.

En outre, dans les versions de MS-DOS 5.0 et ultérieures, macros DOSKEY disposer priorité sur les commandes internes. Pour remplacer une macro DOSKEY, tapez un ou plusieurs espaces avant la commande.

EXEC, fonction

La fonction MS-DOS EXEC (interruption 21 h service 4Bh) ne comprend pas les extensions de nom de fichier ; par conséquent, il simplement prend le nom du fichier spécifié lorsque appelé et tente d'exécuter.

Ce manque d'informations de nom de fichier est un avantage aux programmes qui ont des fichiers exécutables. Ces fichiers sont pilotes de périphérique (qui sont généralement l'extension .SYS) ou des fichiers de superposition (qui sont généralement l'extension .OVL). COMMAND.COM ne peut pas exécuter ces fichiers ; seuls les programmes qu'appeler explicitement la fonction EXEC peuvent exécuter ces programmes.

La fonction EXEC comprend uniquement les fichiers dans la plupart des cas extensions .com et .exe. Il ne parvient pas à exécuter des fichiers .BAT ; ces fichiers sont spécifiquement « exécuté », une ligne à une heure, par COMMAND.COM.

Propriétés

Numéro d'article: 35284 - Dernière mise à jour: samedi 10 mai 2003 - Version: 2.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft MS-DOS 4.0 Standard
  • Microsoft MS-DOS 4.01 Standard
  • Microsoft MS-DOS 5.0 Standard
  • Microsoft MS-DOS 5.0a
  • Microsoft MS-DOS 6.0 Standard
  • Microsoft MS-DOS 6.2 Standard
  • Microsoft MS-DOS 6.21 Standard
  • Microsoft MS-DOS 6.22 Standard
Mots-clés : 
kbmt KB35284 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 35284
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Exclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.

Envoyer des commentaires