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

VB 6 et antérieur Discussion :

Problème avec la fonction SHELL


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Kokito
    Homme Profil pro
    Inscrit en
    Février 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2004
    Messages : 78
    Par défaut Problème avec la fonction SHELL
    Bonjour tout le monde

    J'ai un pti soucis avec la fonction SHELL.

    Je m'explique, je veux lancer une exportation de la base MySQL par une interface en VB donc je fais ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
        com = Chr(34) & "C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqldump.exe" & _
            Chr(34) & " -u root --add-drop-table --add-locks --create-options --opt SYMUBRUIT > export.sql"
        task = Shell(com)
    Quand je tape cette ligne dans la commande, ca marche nickel mais en VB, ca ne marche pas ... il ne se passe rien ... bref pas moyen de savoir pourquoi

    J'viens d'y passer une bonne partie de l'après-midi à faire différents tests ... bref j'en peux plus là ... ca m'a dégouté de ma journée de boulot car je suis sur que ca doit être tout bête mon erreur

    Merci de votre aide

  2. #2
    Rédacteur
    Avatar de DarkVader
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    2 131
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 131
    Par défaut
    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        com = "C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqldump.exe" & _
            " -u root --add-drop-table --add-locks --create-options --opt SYMUBRUIT > export.sql"
        task = Shell(com)
    ?

  3. #3
    Membre confirmé Avatar de Kokito
    Homme Profil pro
    Inscrit en
    Février 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2004
    Messages : 78
    Par défaut
    J'essaye ca demain matin au boulot même si il me semble que j'avais déjà essayé !

    Merci de ton aide

  4. #4
    Membre confirmé Avatar de Kokito
    Homme Profil pro
    Inscrit en
    Février 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2004
    Messages : 78
    Par défaut
    Voilà je viens d'essayer ca ne marche toujours pas avec la solution de DarkVader ...

    J'suis désespéré ... il me reste plus que ça à faire et j'en ai fini de ce programme en VB

  5. #5
    Membre chevronné
    Homme Profil pro
    Développeur VB6 et tout neuf en .Net
    Inscrit en
    Avril 2005
    Messages
    377
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VB6 et tout neuf en .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 377
    Par défaut
    Ton chemin contient des espaces, essaie cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    com = """C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqldump.exe""" & _
            " -u root --add-drop-table --add-locks --create-options --opt SYMUBRUIT > export.sql"
        task = Shell(com)
    J'ai ajouté des "" autour du chemin de l'éxécutable.
    Essaie de déplace ton éxécutable dans un répertoire sans espace.

  6. #6
    Membre confirmé Avatar de Kokito
    Homme Profil pro
    Inscrit en
    Février 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2004
    Messages : 78
    Par défaut
    Huhu je viens de l'essayer, c'est pareil ... ca ne marche pas, pourtant je fais un copier / coller du contenu de "com" dans la commande et ca marche !!

    On doit rajouter une syntaxe en plus dans la fonction SHELL peut-être non ?


  7. #7
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 730
    Par défaut
    Et avec ShellExecute ?

  8. #8
    Rédacteur
    Avatar de DarkVader
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    2 131
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 131
    Par défaut
    Avant de chercher du coté des paramètres passés (d'autant que cela passe en ligne de commande)
    prends l'habitude de vérifier d'abord la syntaxe avec une application courante.


    ex
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        Dim application As String, paramètres As String
        application = "C:\Windows\Notepad.exe"
        paramètres = "C:\boot.ini"
     
        com = Chr(34) & application & Chr(34) & _
                " " & Chr(34) & paramètres & Chr(34)
        task = Shell(com)

  9. #9
    Membre confirmé Avatar de Kokito
    Homme Profil pro
    Inscrit en
    Février 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2004
    Messages : 78
    Par défaut
    DarkVader ton exemple marche donc c'est pas la faute aux guillemets !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec une fonction date.
    Par kmayoyota dans le forum ASP
    Réponses: 8
    Dernier message: 09/09/2004, 12h33
  2. Problème avec la fonction findfirst ()
    Par Angelico dans le forum Windows
    Réponses: 3
    Dernier message: 05/08/2004, 20h40
  3. [Requete SQL en VBA] Problème avec la fonction FLOOR
    Par zubral dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/07/2004, 13h24
  4. Problème avec les fonctions
    Par jvachez dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 13/01/2004, 12h06
  5. [Postgresql]Problème avec les fonctions ...
    Par fet dans le forum Requêtes
    Réponses: 4
    Dernier message: 02/10/2003, 09h04

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