DetailPage-MSS-KB

Base de connaissances

Numéro d'article: 314106 - Dernière mise à jour: mardi 1 avril 2003 - Version: 1.0

Ancien nº de publication de cet article : F314106
Pour obtenir une version Microsoft Windows 2000 de cet article, consultez l'article 165214  (http://support.microsoft.com/kb/165214/FR/ ) .

Sommaire

Résumé

Cet article décrit les procédures à suivre pour dépanner des programmes MS-DOS sous Windows.

Plus d'informations

Vérification du sous-système Ntvdm

Le premier élément à vérifier lorsque vous rencontrez des problèmes avec des programmes MS-DOS sous Windows est le sous-système NTVDM (Virtual DOS Machine). Vous pouvez employer l'utilitaire Command.com pour tester le bon fonctionnement du sous-système NTVDM. Pour démarrer Command.com, procédez comme suit :
  1. Cliquez sur le bouton Démarrer, puis sur Exécuter.
  2. Dans la zone Ouvrir, tapez command.com, puis cliquez sur OK.
Une fenêtre d'invite de commande devrait apparaître à l'écran. Si cela ne donne pas le résultat escompté, c'est qu'il y a un problème avec le sous-système NTVDM ; il convient alors de contrôler les éléments suivants :
  • Vérifiez la présence de paramètres non standard dans les fichiers Config.nt et Autoexec.nt dans le dossier %RacineSystème%\System32.

    Utilisez une instruction REM pour mettre en commentaire toutes les entrées à l'exception des entrées par défaut suivantes :
       Config.nt
       ---------
       dos=high, umb
       device=%SystemRoot%\System32\Himem.sys
       files=20
    
       Autoexec.nt
       -----------
    
       lh %SystemRoot%\System32\Mscdexnt.exe
       lh %SystemRoot%\System32\Redir
       lh %SystemRoot%\System32\Dosx
       lh %SystemRoot%\System32\Nw16 (seulement si le service CSNW est installé)
       lh %SystemRoot%\System32\Vwipxspx (seulement si le service CSNW est installé)
    Une autre manière de procéder consiste à décompresser Autoexec.nt_ et Config.nt_ du CD-ROM Windows dans le dossier %RacineSystème%\System32.
  • Appuyez sur CTRL+MAJ+ÉCHAP pour démarrer le Gestionnaire de tâches, quittez tous les programmes en cours d'exécution et assurez-vous qu'aucun autre traitement NTVDM n'est en cours.
  • Empêchez tous les programmes de s'exécuter au démarrage. Les programmes peuvent s'exécuter à partir de trois emplacements au démarrage : les groupes Démarrage, les lignes Run et RunOnce du Registre et les lignes "run=" et "load=" dans le fichier Win.ini. Vous pouvez vérifier ces emplacements en procédant comme suit :
    1. Les groupes Démarrage sont des dossiers qui se trouvent sur le disque dur local. Ils se trouvent aux emplacements suivants :
      • %RacineSystème%\Profils\ nom_utilisateur \Menu Démarrer\Programmes
      • %RacineSystème%\Profils\Utilisateur par défaut\Menu Démarrer\Programmes
    2. Les lignes Run et RunOnce se trouvent dans le Registre, sous la clé de Registre suivante :
      HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\
    3. Vous pouvez modifier le fichier Win.ini à l'aide du Bloc-notes. Le fichier Win.ini se trouve dans le dossier %RacineSystème%.
  • Examinez les fichiers système NTVDM dans le dossier %RacineSystème%\System32. Vérifiez les fichiers suivants et assurez-vous que leur version est correcte en vérifiant la taille et la date :
       Ntio.sys
       Ntdos.sys
       Ntvdm.exe
       Ntvdm.dll (Windows NT 3.1 uniquement)
       Redir.exe
  • Les entrées de Registre qui sont associées au sous-système NTVDM sont les suivantes :
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment
      Cette clé stocke les variables d'environnement provenant des fichiers Config.sys et Autoexec.bat destinées à être utilisées sous Windows.
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ VirtualDeviceDrivers
      Cette clé stocke les pilotes de périphérique utilisés dans une session NTVDM. Le programme d'installation de Windows crée ces entrées lors de l'installation d'un pilote de périphérique.

Vérification des points spécifiques à un programme

Les fonctions suivantes sont inopérantes sous Windows XP :
  • Toutes les fonctions MS-DOS sont prises en charge à l'exception des fonctions de l'API (interface de programmation d'applications) de commutation de tâches.
  • Les pilotes de périphérique en mode bloc ne sont pas pris en charge. Les périphériques d'entrée-sortie par blocs n'étant pas pris en charge, les API de contrôle d'entrée-sortie (IOCTL) MS-DOS qui gèrent des périphériques d'entrée-sortie par blocs et des fonctions SETDPB ne sont pas prises en charge non plus.
  • La fonction 1A de l'interruption 10 retourne 0 ; toutes les autres fonctions sont transférées en mémoire morte (ROM).
  • Les appels de l'interruption 13 qui gèrent les interdictions d'accès aux disques ne sont pas pris en charge.
  • L'interruption 18 (ROM BASIC) génère un message signalant que ROM BASIC n'est pas pris en charge.
  • L'interruption 19 ne redémarre pas l'ordinateur, mais ferme proprement la machine DOS virtuelle (VDM) active.
  • L'interruption 2F, qui gère les appels du programme DOSKEY (AX = 4800), n'est pas prise en charge.
  • Les fonctions MSCDEX (Microsoft CD-ROM Extensions) 2, 3, 4, 5, 8, E et F ne sont pas prises en charge.
  • Le sous-système 16 bits sur un ordinateur x86 prend en charge les programmes en mode étendu ; cependant, il ne prend pas en charge les pilotes de périphérique virtuels (VxDs) 16 bits. Le sous-système sur un ordinateur non-x86 émule le jeu d'instructions Intel 40486, ce qui permet à l'ordinateur d'exécuter des programmes en mode étendu, comme Microsoft Visual Basic, sur des ordinateurs à jeu d'instructions réduit (RISC).
En d'autres termes, Windows ne prend pas en charge les programmes 16 bits qui nécessitent un accès illimité au matériel. Si c'est le cas de votre programme, il ne fonctionnera pas sous Windows NT, Windows 2000 ou Windows XP.

Il convient ensuite de vérifier si les paramètres des fichiers Autoexec.nt et Config.nt sont corrects. Essayez toujours les paramètres par défaut indiqués plus haut dans cet article. Certains programmes nécessitent des paramètres ou des pilotes spéciaux dans le fichier Config.sys ou Autoexec.bat pour pouvoir s'exécuter. Dans ce cas, vous avez le choix entre deux options pour initialiser ces fichiers lorsque vous démarrez votre programme :
  • Entrer ces lignes dans les fichiers Config.nt et Autoexec.nt, dans le dossier %RacineSystème%\System32.
  • Créer de nouveaux fichiers Config et Autoexec à exécuter lors du démarrage de ce programme. Pour cela, procédez comme suit :
    1. Créez les fichiers et enregistrez-les avec l'extension .nt dans un dossier autre que %RacineSystème%\System32 (il est recommandé de les enregistrer dans le même dossier que le programme).
    2. Cliquez avec le bouton droit sur le Bureau, pointez sur Nouveau, puis cliquez sur Raccourci.
    3. Dans la zone Entrez l'emplacement de l'élément , entrez le chemin d'accès complet au fichier que vous voulez exécuter, puis cliquez sur Suivant.
    4. Dans la zone Entrez un nom pour ce raccourci , entrez le nom du raccourci, puis cliquez sur Terminer. Vous venez de créer un nouveau raccourci sur le Bureau.
    5. Cliquez avec le bouton droit sur le nouveau raccourci, puis cliquez sur Propriétés.
    6. Sous l'onglet Programme, cliquez sur Windows pour ouvrir une boîte de dialogue afin d'entrer le chemin d'accès aux fichiers Autoexec et Config.
    7. Entrez le chemin d'accès complet aux fichiers que vous avez créés, puis cliquez sur OK dans les deux boîtes de dialogue.
    En cliquant sur cette icône, le système exécutera les fichiers Autoexec et Config spécifiés pour le programme. Ces paramètres sont soumis aux même limitations que celles indiquées pour les programmes MS-DOS.
Il y a d'autres paramètres dans les propriétés d'un programme. Si votre programme ne fonctionne pas correctement, vérifiez tous les onglets et assurez-vous que les paramètres du programme sont bien définis selon les spécifications du fabricant. Si le programme ne fonctionne toujours pas, contactez le fournisseur du programme pour vous assurer qu'il est pris en charge par Windows.

Pour plus d'informations, cliquez sur les numéros ci-dessous pour afficher les articles correspondants dans la Base de connaissances Microsoft :
171940  (http://support.microsoft.com/kb/171940/ ) Les opérations d'entrée-sortie MS-DOS sont à l'origine d'un accès au lecteur de disquette
102418  (http://support.microsoft.com/kb/102418/ ) Erreur NTVDM : Il n'y a aucun disque dans le lecteur
156687  (http://support.microsoft.com/kb/156687/ ) Des entrées dans CONFIG.NT ou AUTOEXEC.NT peuvent être à l'origine d'erreurs NTVDM
142026  (http://support.microsoft.com/kb/142026/ ) Err : "Console cachée de WOW VDM" en cours d'exécution d'une application 16 bits ou DOS
Les produits tiers mentionnés dans le présent article proviennent de fournisseurs indépendants de Microsoft ; nous n'accordons aucune garantie, implicite ou autre, en ce qui concerne le fonctionnement ou la fiabilité de ces produits.

Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Windows XP Édition familiale
  • Microsoft Windows XP Professionnel
Mots-clés : 
kbinfo kbtshoot kbenv KB314106
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.
Partager
Options de support supplémentaire
Forums du support Microsoft Community
Nous contacter directement
Trouver un partenaire Microsoft Certified Partner
Microsoft Store