02/11-2005 à 22:47Je pense que Johannis pourra nous le confirmer
bien sûr.
command.com a été utilisé de dos1.0 à win98SE.
(il me semble qu'il avait déjà disparu de winME... je n'en ai pas un sous la main, là, pour vérifier).
command.com est un des trois fichiers système "historiques", avec io.sys et msdos.sys enregistrés lorsqu'on créé une disquette de démarrage dos/windows ou recopiés sur les secteurs de boot d'un disque dur lorqu'on tape la commande :
sys c: x: (pour copier les fichiers système du disque c: vers un disque x:)
cmd.exe est le substitut du processeur de commande de dos ("émulation dos") sous winXP.
Il permet de travailler sans avoir besoin d'utiliser le fichier de démarrage de substitution autoexec.nt (équivalent dans le monde 32 bits, donc depuis win NT) de l'autoxec.bat de dos et windows 16 bits).
D'où ce message d'erreur lorsqu'on essaie de lancer une application 16 bits (comme command.com).
Inversement, certains logiciels (ou certains jeux anciens, en particulier) ne fonctionnent pas en émulation dos et nécessitent donc de modifier l'autoexec.nt de windows XP.
(Petit détail :
command.com est un programme dos, limité, comme tous les programmes "com" à une taille maxi de 64ko. (mais qui en revanche, nécessitent de nombreux programmes annexes pour être pleinement opérationnels... d'où, par exemple toutes les instructions dos complémentaires qui utilisent des "com" : tree.com subst.com attrib.com move.com... plus un "noyau" système de démarrage (sous forme de programmes "sys").
cmd.exe s'affranchit de cette limite de taille (comme tous les "exécutables") et peut donc intégrer plus de modules et fonctionner quasiment en autonome (avec juste l'appoint de bibliothèques (dll, ocx, vdb, etc.) qui servent essentiellement à son interface graphique.
Noter qu'historiquement, windows est directement dérivé de ce premier noyau de programmes : preuve en est que le programme de base est un... win.com (et pas un win.exe) de moins de 64 ko !