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

VBA Access Discussion :

Fermer invite de commande


Sujet :

VBA Access

  1. #1
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 83
    Points : 51
    Points
    51
    Par défaut Fermer invite de commande
    Bonjour,

    Je vous présente tout d'abord un bout de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ChDir ("C:\Users\user\Desktop\dossier\images")
         Shell ("cmd.exe")
         Shell ("base64 -e " & sNomFichierAcExt & " " & "base64/" & sNomFichier)
    qui permet d'ouvrir l'invite de commande, de se positionner dans un répertoire et d'executer un code (dernière ligne).
    Le problème c'est que l'invite de commande ne se ferme pas automatiquement.
    Je cherche le moyen de le fermer avec du code.
    J'ai essayé
    mais non ça ne fonctionne pas...

    Merci de votre aide
    Cdlt

  2. #2
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 83
    Points : 51
    Points
    51
    Par défaut
    J'ai trouvé une solution de dépannage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Shell "cmd.exe", vbHide
    Cela permet de cacher la fenêtre. Mais je me demande si l'invite de commande se ferme ou reste invisible. Dans le gestionnaire des tâches il n’apparaît pas mais je ne suis pas sûre à 100% que ça ferme l'invite de cmd.

    Si quelqu'un en sait plus je suis preneuse
    Merci
    Cdlt

  3. #3
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonsoir,

    La ligne avec Shell ("cmd.exe") ne sert à rien à mon avis.
    Utiliser plusieurs instructions Shell crée des processus indépendants les uns des autres.

    Qu'est-ce que Base64 ?
    Un programme ou une commande de cmd.exe ?

    A+

  4. #4
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 461
    Points : 43 264
    Points
    43 264
    Par défaut exit sur cmd.exe
    Essayes cmd.exe /c

    Sinon situ as plusieurs commandes à exécuter, tu les mets dans 1 fichier .cmd avec en dernière commande exit
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  5. #5
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 83
    Points : 51
    Points
    51
    Par défaut
    Bonjour à tous,

    Tout d'abord merci pour vos réponses.

    LedZeppII pour répondre à ta question, base64 est un outil qui s’exécute en ligne de commande. Il sert à encoder des images en base64.
    La commande
    fonctionne ainsi que la dernière commande pour encoder. Mon seul souci est que l'invite de commande ne se ferme pas automatiquement après l'exécution. Si tu as une autre proposition pour exécuter une commande DOS, merci de m'en faire part ça m'intéresse.

    chrtophe, je vais essayer tout de suite. Par contre je n'ai pas bien saisi ce que tu as écris ensuite :
    Sinon situ as plusieurs commandes à exécuter, tu les mets dans 1 fichier .cmd avec en dernière commande exit
    Je vous tiens au courant.

    Merci beaucoup
    Cdlt

  6. #6
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonjour,
    Citation Envoyé par vittirivizzik Voir le message
    LedZeppII pour répondre à ta question, base64 est un outil qui s’exécute en ligne de commande. Il sert à encoder des images en base64.
    La commande
    fonctionne ainsi que la dernière commande pour encoder. Mon seul souci est que l'invite de commande ne se ferme pas automatiquement après l'exécution. Si tu as une autre proposition pour exécuter une commande DOS, merci de m'en faire part ça m'intéresse.
    Tu n'as pas besoin de cmd.exe. Une simple ligne de commande suffit.

    Exemple avec l'utilitaire 7z.exe.
    Ma ligne de commande pour décompresser un fichier archive est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "Chemin\7z.exe" e -y "Chemin\fichier_archive" -o"Chemin dossier extraction"
    Voila ce que je fais en VBA:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim sCmd As String, sDelim As String
    Dim sExe As String, sArgs As String
     
    sDelim = """"
    sExe = sDelim & "C:\Program Files\7-Zip\7z.exe" & sDelim
    sArgs = "e -y " & sDelim & "C:\OP\SHARED\LFM1.txt.gz" & sDelim & " -o" & sDelim & "C:\OP\SHARED" & sDelim
     
    sCmd = sExe & " " & sArgs
     
    Shell sCmd
    La variable sDelim contient un guillemet double qui me sert à délimiter les noms complets de fichier ou de dossier.

    A+

Discussions similaires

  1. Empecher de fermer l'invite de commande
    Par ben79510 dans le forum Scripts/Batch
    Réponses: 6
    Dernier message: 04/01/2013, 01h44
  2. Comment lire un wav en invite de commande
    Par sdx dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 02/10/2005, 01h54
  3. compilation avec invite de commandes
    Par new_wave dans le forum Général Java
    Réponses: 1
    Dernier message: 21/07/2005, 22h32
  4. Ecrire dans l'invite de commande
    Par Joeleclems dans le forum MFC
    Réponses: 9
    Dernier message: 08/06/2005, 13h19
  5. [Clavier] Gestion d'une invite de commandes
    Par Damian dans le forum Assembleur
    Réponses: 9
    Dernier message: 28/04/2005, 16h41

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