Etienne BAUDOUX

Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Etienne BAUDOUX

Forum sur les projets de Etienne BAUDOUX

-55%
Le deal à ne pas rater :
Friteuse sans huile – PHILIPS – Airfryer HD9200/90 Série 3000
49.99 € 109.99 €
Voir le deal

4 participants

    [RESOLU] Comment exécuter un programme externe

    avatar
    Clem120%
    Nouveau
    Nouveau


    Masculin Nombre de messages : 4
    Date d'inscription : 07/01/2010

    executer - [RESOLU] Comment exécuter un programme externe Empty [RESOLU] Comment exécuter un programme externe

    Message par Clem120% Jeu 7 Jan 2010 - 16:54

    Bonjour,
    je voudrais savoir comment exécuter un programme externe.
    J'ai essayé avec la fonction exécuter une commande Shell mais softwarezator m'indique à la compilation que le .xml est manquant, j'ai tout réinstallé -> aucun changement. J'ai alors essayé de faire ça avec une commande Visual basic:
    ça marche, aucun plantage mais rien ne se lance, quelle que soit l'application choisie.

    Dim proc As New System.Diagnostics.Process()
    proc.StartInfo.FileName = "WindowsApplication1.exe"
    proc.StartInfo.Arguments = ""
    proc.Start()
    proc.Close()

    (j'y connaît rien en visual basic).


    Dernière édition par Admin le Ven 18 Juin 2010 - 14:56, édité 1 fois (Raison : sujet résolu)
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 32
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    executer - [RESOLU] Comment exécuter un programme externe Empty Re: [RESOLU] Comment exécuter un programme externe

    Message par Admin Jeu 7 Jan 2010 - 17:17

    Bonjour,

    En effet on a un problème avec l'action "exécuter une commande shell", et vive la prochaine mise à jour, lol !

    En fait, vous devez donner le chemin complet du fichier à lancer :
    si WindowsApplication1.exe se trouve dans le même dossier que l'application qui doit le lancer, alors il faut lui dire d'aller chercher le fichier "dans le dossier ou est exécuter l'application", et puisque ce dossier peut changer selon les ordinateurs, on utilise une commande spécial :

    My.Application.StartupPath, soit :

    Dim proc As New System.Diagnostics.Process()
    proc.StartInfo.FileName = My.Application.StartupPath & "\WindowsApplication1.exe"
    proc.StartInfo.Arguments = ""
    proc.Start()

    Note : il est possible que ça fonctionnait aussi sans, mais en VB.Net, la commande "proc.Close" arrête le processus amusé, c'est pour ça que dans tout les cas ça lançait votre programme et l'arrêtait immédiatement.

    Voia executer - [RESOLU] Comment exécuter un programme externe Icon_biggrin
    xav2303
    xav2303
    On s'intègre
    On s'intègre


    Masculin Nombre de messages : 195
    Age : 29
    Localisation : Antony 92160
    Emploi/loisirs : .Net / Plugin
    Humeur : One Again.
    Date d'inscription : 26/01/2009

    executer - [RESOLU] Comment exécuter un programme externe Empty Re: [RESOLU] Comment exécuter un programme externe

    Message par xav2303 Jeu 7 Jan 2010 - 17:20

    Bonjour.

    Le xml est le fichier contenant le code visual basic à effectué.
    Je ne l'ai pas non plus, peut être une erreur lors de la création de l'installeur...
    Tu peux faire "Exécuter" une commande visual basic et mettre dedans :

    Shell("LeCheminDeTonProgramme")

    Si tu veux lancer un programme qui se situe dans le dossier "Dossier1" lui même placer dans le dossier source de ton application SZ, tu peux faire :

    Shell("Application.StartupPath & "\Dossier1\MonApplication.exe")

    Tu peux également lancé un "fichier" avec une application (exemple lancé un document word avec word , en séparant par un espace les 2 chemin tout simplement :

    Shell("LeCheminDeWord LeCheminDeTonFichierWord")

    Voilà ! Si tu as d'autre questions n'hésite pas

    @+
    avatar
    Clem120%
    Nouveau
    Nouveau


    Masculin Nombre de messages : 4
    Date d'inscription : 07/01/2010

    executer - [RESOLU] Comment exécuter un programme externe Empty Re: [RESOLU] Comment exécuter un programme externe

    Message par Clem120% Jeu 7 Jan 2010 - 18:27

    J'ai copié ce que tu m'as donné dans une commande visual basic et ça bug à la compilation alors qu'avec le code que j'avais trouver ça ne buggait pas.
    Faut-il que je rajoute quelque chose ?
    xav2303
    xav2303
    On s'intègre
    On s'intègre


    Masculin Nombre de messages : 195
    Age : 29
    Localisation : Antony 92160
    Emploi/loisirs : .Net / Plugin
    Humeur : One Again.
    Date d'inscription : 26/01/2009

    executer - [RESOLU] Comment exécuter un programme externe Empty Re: [RESOLU] Comment exécuter un programme externe

    Message par xav2303 Jeu 7 Jan 2010 - 18:34

    Si tu parle de mon code, en effet dans les programmes que tu créer avec SZ, il n'y a pas les même références que dans Visual Studio.

    Ton erreur doit être du style "Le nom Shell n'est pas déclarer" non ?

    Remplace Shell par Microsoft.VisualBasic.Interaction.Shell("TonApplication")

    Wink
    avatar
    Clem120%
    Nouveau
    Nouveau


    Masculin Nombre de messages : 4
    Date d'inscription : 07/01/2010

    executer - [RESOLU] Comment exécuter un programme externe Empty Re: [RESOLU] Comment exécuter un programme externe

    Message par Clem120% Jeu 7 Jan 2010 - 21:41

    Je n'ai jamais codé en visual basic, je code que je vous ai donné provient d'internet, après 5 essais j'en ai trouvé un qui marche, c'est celui ci mais il ne fait rien, pourriez vous m'expliquer quoi marquer exactement car je ne comprends pas.
    avatar
    Clem120%
    Nouveau
    Nouveau


    Masculin Nombre de messages : 4
    Date d'inscription : 07/01/2010

    executer - [RESOLU] Comment exécuter un programme externe Empty Re: [RESOLU] Comment exécuter un programme externe

    Message par Clem120% Jeu 7 Jan 2010 - 22:09

    finalement j'ai trouvé, il faut écrire: Microsoft.VisualBasic.Interaction.Shell("WindowsApplication1.exe")
    Vous ne pourriez pas au moins mettre en ligne le xml "exécuter une commande windows" c'est un gros manque pour quiconque souhaite utiliser votre logiciel.
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 32
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    executer - [RESOLU] Comment exécuter un programme externe Empty Re: [RESOLU] Comment exécuter un programme externe

    Message par Admin Jeu 7 Jan 2010 - 22:11

    Code:
    Dim proc As New System.Diagnostics.Process()
    proc.StartInfo.FileName = My.Application.StartupPath & "\WindowsApplication1.exe"
    proc.StartInfo.Arguments = ""
    proc.Start()

    Ici, il va lancer le fichier "C:\Un dossier\Le Dossier D'Ou Est Lancé Votre Application\WindowsApplication1.exe"
    xav2303
    xav2303
    On s'intègre
    On s'intègre


    Masculin Nombre de messages : 195
    Age : 29
    Localisation : Antony 92160
    Emploi/loisirs : .Net / Plugin
    Humeur : One Again.
    Date d'inscription : 26/01/2009

    executer - [RESOLU] Comment exécuter un programme externe Empty Re: [RESOLU] Comment exécuter un programme externe

    Message par xav2303 Ven 8 Jan 2010 - 6:41

    Je pourrait te donner les indication pour recréer rapidement le plugin si tu veux mais ne pouvant plus lancer certaines applications (Virus...) il faudra que je fasse quelque petite recherche avant.
    Tu devra te contenter de ce que tu as trouver pour l'instant ! Razz

    @+

    Xavier
    avatar
    lerombasien
    Nouveau
    Nouveau


    Masculin Nombre de messages : 17
    Age : 81
    Date d'inscription : 15/11/2009

    executer - [RESOLU] Comment exécuter un programme externe Empty lancer un programme externe sans attendre qu'il se termine

    Message par lerombasien Sam 9 Jan 2010 - 15:20

    Bonjour

    pour lancer un programme externe sans attendre que celui-ci se termine,

    sous la rubrique "général"
    choisir la fonction "executer des commandes visual basic.net"

    dans la boite de dialogue qui s'ouvre mettre comme instruction

    diagnostics.Process.Start("chemin complet du programme")

    exemple, si je veux executer le jeu sokoban, je crée la commande

    diagnostics.Process.Start("c:\program files\jeux\sokoban\sokoban.exe")

    bon courage

    avatar
    lerombasien
    Nouveau
    Nouveau


    Masculin Nombre de messages : 17
    Age : 81
    Date d'inscription : 15/11/2009

    executer - [RESOLU] Comment exécuter un programme externe Empty comment executer un proigramme externe

    Message par lerombasien Sam 9 Jan 2010 - 17:54

    Bonjour

    pour executer un programme externe une autre methode qui est proche de la précédente mais qui permet d'attendre que le programme se termine avant que softwarezator continue

    dim monjeu as new diagnostics.Process
    monjeu.Startinfo.filename="c:\program files\jeux\sokoban\sokoban.exe"
    monjeu.start()
    monjeu.waitforexit()

    explications :

    monjeu est un nom que vous fixez vous-même il doit être le même sur les 4 lignes
    la premiére ligne crée une instance
    la deuxième ligne decrit le programme à executer
    la troisième ligne execute le programme
    la quatrième demande d'attendre que le programme appelé se termine avant de continuer
    si la quatrième ligne n'existe pas, softwarezator continue pendant que l'autre programme s'execute
    si vous voulez que softwarezator attende un certain délai avant de reprendre son traitement mettre entre les parenthèses de la quatrième ligne le nombre de millisecondes a attendre

    exemple : si je veux que sz attende 2 secondes avant de reprendre, la 4ème ligne sera alors

    monjeu.waitforexit(2000)

    si je veux ouvrir un fichier avec le programme qui lui est associé dans windows, je mets simplement le nom complet du fichier sur la 2ème ligne ce qui fait que, si je change l'association, mon programme sz n'aura pas besoin d'être modifié.

    pour les intégrer dans une commande "executer une commande visual basic.net" copier les 4 lignes
    et les coller dans la boite de dialogue puis changez les parametres

    j'espère etre assez clair
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 32
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    executer - [RESOLU] Comment exécuter un programme externe Empty Re: [RESOLU] Comment exécuter un programme externe

    Message par Admin Sam 9 Jan 2010 - 18:53

    l'explication l'est en tout cas =), ça me rappel les tutoriaux sur VB.Net que je lisais il y a quelque années de ça, lol
    xav2303
    xav2303
    On s'intègre
    On s'intègre


    Masculin Nombre de messages : 195
    Age : 29
    Localisation : Antony 92160
    Emploi/loisirs : .Net / Plugin
    Humeur : One Again.
    Date d'inscription : 26/01/2009

    executer - [RESOLU] Comment exécuter un programme externe Empty Re: [RESOLU] Comment exécuter un programme externe

    Message par xav2303 Sam 9 Jan 2010 - 20:45

    Ca c'est de l'explication amusé Bien joué Wink
    avatar
    lerombasien
    Nouveau
    Nouveau


    Masculin Nombre de messages : 17
    Age : 81
    Date d'inscription : 15/11/2009

    executer - [RESOLU] Comment exécuter un programme externe Empty executer un programme externe

    Message par lerombasien Sam 9 Jan 2010 - 21:08

    une autre façon d'appeler un programme externe

    dim monprog as string = "c:\program files\jeux\sokoban\sokoban.exe"
    Microsoft.VisualBasic.Interaction.shell(monprog, ,true)

    cela parait évident
    la première ligne donne le chemin d'accès au programme
    la deuxième ligne execute le programme

    le dernier parametre true dit que sz doit attendre la fin du programme
    false dit que sz n'attend pas
    si ce parametre est à true, il peur y avoir un parametre supplémentaire qui indique le nombre de millisecondes à attendre avant de continuer

    dim monprog as string = "c:\program files\jeux\sokoban\sokoban.exe"
    Microsoft.VisualBasic.Interaction.shell(monprog, ,true,3000)

    indique que sz attendra 3 secondes avant de continuer son execution

    à vous de choisir la solution qui convient le mieux

    bon courage
    xav2303
    xav2303
    On s'intègre
    On s'intègre


    Masculin Nombre de messages : 195
    Age : 29
    Localisation : Antony 92160
    Emploi/loisirs : .Net / Plugin
    Humeur : One Again.
    Date d'inscription : 26/01/2009

    executer - [RESOLU] Comment exécuter un programme externe Empty Re: [RESOLU] Comment exécuter un programme externe

    Message par xav2303 Sam 9 Jan 2010 - 22:35

    Bonsoir,
    Je ne vois pas l'utilité de déclarer la variable, et non de la mettre directement dans l'interaction Shell...

    Bonne nuit à tous
    avatar
    lerombasien
    Nouveau
    Nouveau


    Masculin Nombre de messages : 17
    Age : 81
    Date d'inscription : 15/11/2009

    executer - [RESOLU] Comment exécuter un programme externe Empty executer un programme externe

    Message par lerombasien Dim 10 Jan 2010 - 0:28

    tout simplement parceque dans softwarezator si je mets tout sur une seule instruction je suis sur deux lignes dans la zone de saisie et l'instruction est coupée en deux par un retour ligne. pour palier à cela, la syntaxe serait plus complexe.
    deuxième raison : je peux saisir le nom du programme dans la forme et l'affecter à la variable
    donc executer ainsi n'importe quel programme

    bonne nuit

    Contenu sponsorisé


    executer - [RESOLU] Comment exécuter un programme externe Empty Re: [RESOLU] Comment exécuter un programme externe

    Message par Contenu sponsorisé


      La date/heure actuelle est Lun 25 Nov 2024 - 16:50