IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows XP Discussion :

Mise au point de fichiers BAT par exécution en pas à pas


Sujet :

Windows XP

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 10
    Points : 1
    Points
    1
    Par défaut Mise au point de fichiers BAT par exécution en pas à pas
    Bonjour,

    Avec Windows 98 il était possible d'exécuter un fichier BAT en pas à pas pour la mise au point.

    J'ai conservé en archive un fichier COM.BAT contenant la ligne unique :
    command /y /e:%#ENV% /c %1 %2 %3 %4 %5 %6 %7 %8 %9
    - La variable #ENV contenant l'environnement à faire passer à la nouvelle instance de COMMAND.COM.
    - les paramètres permettant de passer la commande à exécuter en pas à pas et ses paramètres.

    A moins d'être passé à coté, je n'ai pas trouvé la même possibilité avec CMD de Windows XP.

    Cordialement.

    L. M.

  2. #2
    Expert éminent sénior
    Avatar de JML19
    Homme Profil pro
    Retraité : Electrotechnicien Electronicien Informaticien de la SNCF
    Inscrit en
    Décembre 2010
    Messages
    14 939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Retraité : Electrotechnicien Electronicien Informaticien de la SNCF
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2010
    Messages : 14 939
    Points : 23 251
    Points
    23 251
    Billets dans le blog
    10
    Par défaut
    Bonjour

    Ce n'est effectivement pas le même environnement DOS en 98 et XP.
    Vous pouvez utiliser les FAQ (ICI) ou les Tutoriels (ICI) et aussi accéder au blog (ICI)

  3. #3
    Membre à l'essai Avatar de Redge04
    Homme Profil pro
    Dessinateur Industriel
    Inscrit en
    Juillet 2016
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dessinateur Industriel
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2016
    Messages : 15
    Points : 19
    Points
    19
    Par défaut
    Bonjour,


    A priori, les variables d'environnement disponibles sont les suivantes :


    ALLUSERSPROFILE
    APPDATA
    CLASSPATH
    CommonProgramFiles
    COMPUTERNAME=
    ComSpec
    DEVMGR_SHOW_DETAILS
    FP_NO_HOST_CHECK
    HOMEDRIVE
    HOMEPATH
    LOGONSERVER
    NUMBER_OF_PROCESSORS
    OS
    Path
    PATHEXT
    PROCESSOR_ARCHITECTURE
    PROCESSOR_IDENTIFIER
    PROCESSOR_LEVEL
    PROCESSOR_REVISION
    ProgramFiles
    PROMPT
    QTJAVA
    SESSIONNAME
    SystemDrive
    SystemRoot
    TEMP
    TMP
    USERDOMAIN
    USERNAME
    USERPROFILE
    windir
    DATE
    TIME
    CD
    RANDOM
    ERRORLEVEL
    CMDEXTVERSION
    CMDCMDLINE

    Y en a-t-il une qui pourrait te convenir pour remplacer le #env ?

    En espérant t'avoir aidé.

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Je corrige :

    command /y /e:%#ENV% /c %1 %2 %3 %4 %5 %6 %7 %8 %9
    - La variable #ENV contenait simplement la taille de l'environnement à faire passer à la nouvelle instance de COMMAND.COM.
    - les paramètres permettant de passer la commande à exécuter en pas à pas et ses paramètres.


    Exemple (sans utiliser cette variable) :

    command /y /e:4096 /c toto.bat param1 param2
    On prenait la main après l'exécution de chaque ligne de toto.bat

    En fait, avec Windows XP, COMMAND accepte cette ligne mais il n'y a pas d'exécution de toto.bat en pas à pas.
    Avec Windows 98 on avait la main après l'exécution de chaque ligne du fichier BAT

  5. #5
    Expert éminent sénior
    Avatar de JML19
    Homme Profil pro
    Retraité : Electrotechnicien Electronicien Informaticien de la SNCF
    Inscrit en
    Décembre 2010
    Messages
    14 939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Retraité : Electrotechnicien Electronicien Informaticien de la SNCF
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2010
    Messages : 14 939
    Points : 23 251
    Points
    23 251
    Billets dans le blog
    10
    Par défaut
    Bonsoir

    Il faut se positionner dans le dossier de toto.bat

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    C:\tata\titi\toto.bat ne fonctionne pas correctement il faut faire
    
    C:
    
    Cd\
    
    Cd\toto\titi
    
    toto.bat
    Vous pouvez utiliser les FAQ (ICI) ou les Tutoriels (ICI) et aussi accéder au blog (ICI)

  6. #6
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 415
    Points : 5 806
    Points
    5 806
    Par défaut
    Si à l'invite de Cmd.exe tu tapes : Command /? tu auras ce qui suit :
    Command /?
    Lance une nouvelle copie de l'interpréteur de commandes MS-DOS.

    COMMAND [[lecteur:]chemin] [p‚riph] [/E:nnnnn] [/P] [/[C|K] commande] [/MSG]

    [lecteur:] chemin Emplacement du fichier COMMAND.COM.
    périph Périphérique utilisé pour les E/S des commandes.
    /E:nnnnn Spécifie la taille initiale de l'espace d'environnement.
    /P Rend le nouvel interpréteur de commande permanent.
    /C chaïne Exécute la commande spécifiée par chaïne, puis s'arrête.
    /MSG stocke tous les messages d'erreurs en m‚moire. Vous
    devez spécifier /P avec ce commutateur
    Il y a quelques paramètres qui sont conservés mais la taille de l"environnement est à spécifier manuellement.
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  7. #7
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 10
    Points : 1
    Points
    1
    Par défaut "Command" a une option "pas à pas" avec Windows 98
    Bonjour

    1. Voici ce que donne
    "COMMAND /?" avec Windows 98 SE2 :

    Démarre une nouvelle copie de l'interpréteur de commandes.

    COMMAND [[lecteur:]chem] [périphérique] [/E:nnnnn] [/L:nnnn] [/U:nnn]
    [/P] [/MSG] [/LOW] [/Y [/[C|K] commande]]
    [lecteur:]chem Emplacement du fichier COMMAND.COM.
    périph Périphérique utilisé pour les E/S des commandes.
    /E:nnnnn Fixe à nnnnn octets la taille de l'environnement initial.
    (nnnnn doit être compris entre 256 et 32 768).
    /L:nnnn Spécifie la longueur des tampons internes (/P nécessaire).
    (nnnn doit être compris entre 128 et 1 024).
    /U:nnn Spécifie la longueur du tampon d'entrée (/P nécessaire).
    (nnn doit être compris entre 128 et 255).
    /P Rend le nouvel interpréteur de commandes permanent.
    /MSG Stocke tous les messages d'erreur (/P nécessaire).
    /LOW COMMAND conserve les données résidentes en mémoire basse.
    /Y Déroule le fichier de commandes spécifié par /C ou /K.
    /C command Exécute la commande spécifiée puis quitte.
    /K command Exécute la commande spécifiée et continue son exécution.

    2. Considérons le fichier bat suivant nommé ESSAI.BAT dont une ligne sur deux annonce en echo ce que fera la ligne suivante (c'est un peu tordu) :

    @echo off
    echo echo param1=%%1
    echo param1=%1
    echo set #1=toto
    set #1=toto
    echo echo %%#1%%
    echo %#1%

    dont l'exécution directe affiche :

    echo param1=%1
    param1=123
    set #1=toto
    echo %#1%
    toto

    Ne pas oublier que pour affichier % il faut, dans un BAT, écrire %%.

    3. Je viens d'essayer "COMMAND /Y /E:2345 /C essai.bat 123" avec Windows 98 sur une vieille machine avec ce fichier ESSAI.BAT :

    Après le texte de chaque ligne, il s'écrit "[Entrée=O,Echap=N] ?"
    En tapant sur la touche Entrée, seule cette commande s'exécute.
    Pour chaque nouvelle commande du fichier BAT la même question est posée...
    En appuyant sur Echap on peut abandonner.


    Avec Windows XP, l'option /Y non prévue est ignorée.
    Avec CMD au lieu de COMMAND, l'opton /Y qui signifie /E:OFF (pas d'extensions des commandes), n'est donc pas prévue pour le pas à pas.

    S'il existe une manière de faire du pas à pas dans les BAT, celle qui marchait avec Windows 98 n'existe plus
    Le problème reste pour le moment sans solution. Si ce n'est de faire au besoin la mise au point sous Windows 98 en se privant des extensions de commandes.

    L.M.

  8. #8
    Membre à l'essai

    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2006
    Messages : 14
    Points : 21
    Points
    21
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Pentamino Voir le message
    Bonjour,

    Avec Windows 98 il était possible d'exécuter un fichier BAT en pas à pas pour la mise au point.

    J'ai conservé en archive un fichier COM.BAT contenant la ligne unique :
    command /y /e:%#ENV% /c %1 %2 %3 %4 %5 %6 %7 %8 %9
    - La variable #ENV contenant l'environnement à faire passer à la nouvelle instance de COMMAND.COM.
    - les paramètres permettant de passer la commande à exécuter en pas à pas et ses paramètres.

    A moins d'être passé à coté, je n'ai pas trouvé la même possibilité avec CMD de Windows XP.

    Cordialement.

    L. M.

Discussions similaires

  1. Mise au point d'une résolution par éléments finis
    Par Avatar36 dans le forum Mathématiques
    Réponses: 2
    Dernier message: 21/05/2015, 11h06
  2. Mise en forme des fichiers générés par la macro
    Par soflab31 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/03/2015, 12h11
  3. Lancement Fichier ".bat" par Pack 2003 et 2007
    Par stsym dans le forum VBA Access
    Réponses: 5
    Dernier message: 19/02/2012, 17h31
  4. fichier bat d'exécution des scripts
    Par the java lover dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 29/08/2008, 14h28
  5. Mise à jour d'un fichier excel par un autre
    Par Homer091 dans le forum Excel
    Réponses: 3
    Dernier message: 13/06/2008, 14h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo