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 Forms Discussion :

[VB net] pb shell si appel à fichiers créés dans l application


Sujet :

Windows Forms

  1. #1
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2005
    Messages : 79
    Points : 43
    Points
    43
    Par défaut [VB net] pb shell si appel à fichiers créés dans l application
    bonjour,

    J´ai un probleme que j ai du mal a gérer (et je suis à la bourre alors c´est pas génial )

    Je fais appel à un shell dans une application windows form comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
            Dim rutaobf As String
            rutaobf = exedir & "\console.exe"
            Shell("""" & rutaobf & """", , True)
    Le probleme c est que cette console fait appel à des fichiers créés dans l interface...

    Je m´explique :
    J´ai un bouton qui me crée des fichiers, et entre autres des fichiers .bat comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
                rutaoutbat = exedir & "\outobfpest.bat"
                sw = New StreamWriter(rutaoutbat)
                sw.WriteLine("@cd " & rutanomsim)
                sw.WriteLine("@inschek out.ins out.dat")
                sw.WriteLine("@pause")
                sw.Flush()
                sw.Close()
    Ma console contenue dans le shell (console.exe) appelle ces fichiers .bat pour en créer d autres.

    J appelle le shell avec un autre bouton (pour pas m embeter maintenant) mais :

    - si je viens juste de créer mes .bat dans l´application, le shell ne fonctionne pas (mais si je double clique dans explorer sur mon fichier console.exe ca fonctionne)
    - si je ferme l application et que je la rouvre, et que je relance le shell il fonctionne!!!!!!!


    Je comprends pas ce qui se passe... si vous avez une solution (il me reste 6h pour trouver!!! )

    Merci!!!!!

  2. #2
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2005
    Messages : 79
    Points : 43
    Points
    43
    Par défaut
    bon ben j ai essayé d´une autre maniere en créant les fichiers .bat à part mais j ai toujours un probleme.
    (passée les 6h, c etait pour mon chef qui s en va mais tant pis, le sujet est tjrs d actualité! )

    J ai l impression que le probleme est un probleme d´ordre !
    Le shell s exécute avant le reste... c est assez bizarre!

    Si vous avez des idées je suis preneuse! moi j en ai plus tellement

    Merci!

  3. #3
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2005
    Messages : 79
    Points : 43
    Points
    43
    Par défaut
    Personne pour m´aider?...

    J´ai essayé avec un process que j´ai trouvé dans le forum:

    Sur un bouton je crée le .bat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
                'out.bat
                rutaoutbat = exedir & "\outobfpest.bat"
                sw = New StreamWriter(rutaoutbat)
                sw.WriteLine("@cd " & rutanomsim)
                sw.WriteLine("@inschek out.ins out.dat")
                sw.WriteLine("@pause")
                sw.Flush()
                sw.Close() '
    Et je l´appelle avec un autre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            Dim proc As System.Diagnostics.Process = New System.Diagnostics.Process
            proc.EnableRaisingEvents = False
            proc.StartInfo.FileName = "outobfpest.bat"
            proc.Start()
            proc.WaitForExit()
    Mais j´ai toujours le meme probleme :

    - si je clique sur le premier bouton, ca me crée bien le .bat, mais si je clique sur le 2nd il me dit qu´il trouve pas le fichier....
    - si je ferme la form, je rouvre et clique directement sur le 2nd bouton (il appelle le .bat créé antérieurement) ca marche....


    Je sais vraiment plus comment faire pour "valider" le fait que mon fichier s´est créé... et pouvoir tout faire sans fermer la form...

    Merci pour vos réponses!

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/10/2014, 08h34
  2. Réponses: 1
    Dernier message: 19/10/2014, 19h55
  3. Réponses: 7
    Dernier message: 07/10/2013, 19h09
  4. Réponses: 3
    Dernier message: 10/03/2010, 08h06
  5. Réponses: 3
    Dernier message: 03/02/2010, 22h31

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