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

Scripts/Batch Discussion :

Lancer un exe pas de PB, lancer un fichier dans un exe [Batch]


Sujet :

Scripts/Batch

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Dessinateur pro
    Inscrit en
    Juin 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Dessinateur pro
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2013
    Messages : 8
    Points : 9
    Points
    9
    Par défaut Lancer un exe pas de PB, lancer un fichier dans un exe
    Bonjour,

    Je suis à la recherche d'une commande permettant de lancer un fichier dans une .exe sans passer par mon .exe.

    Je m'explique, je suis en train de me faire une bibliothèque de vieux jeux via des émulateurs.
    Pour ce faire voici mon code actuel :
    Code bat : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    @ECHO OFF
    title Test
    cls
    :debut
    cls
    echo =======================================================================
    echo ========================== nG! TEAM PRESENTE ==========================
    echo ======================= OUR EMULATOR GESTIONNARY ======================
    echo =======================================================================
    echo liste :
    echo.
    echo -Megadrive
    echo -PS1
    echo -Autre
    echo.
    echo -Exit
    echo.
    set /p logiciel=Veuillez choisir votre console :
    pause
    If /I "%logiciel%"=="Megadrive" (goto :SM)
    If /I "%logiciel%"=="PS1" (goto :PSone)
    If /I "%logiciel%"=="Autre" (goto :not)
    If /I "%logiciel%"=="Exit" (goto :exit)
    Pause
    
    cls
    :SM
    @echo off
    cls
    echo =======================================================================
    echo ========================== nG! TEAM PRESENTE ==========================
    echo =========================== SEGA MEGADRIVE ============================
    echo =======================================================================
    echo liste :
    echo.
    echo -Street_of_rage_II
    echo.
    set /p jeuxSM=Veuillez choisir votre jeux :
    pause
    If /I "%jeuxSM%"=="Street_of_rage_II" (goto :Street_of_rage_II)
    pause
    
    cls
    :PSone
    start test.exe
    pause
    goto debut
    
    cls
    :not
    echo =======================================================================
    echo =============================== nG! TEAM===============================
    echo =======================================================================
    echo.
    echo Aucune entree correspondante !
    echo.
    pause
    goto debut
    
    cls
    :Street_of_rage_II
    start gens.exe
    echo "Jsuis keblo bordel xD"
    pause
    send ("{!}+{enter}")
    pause
    exit
    
    cls
    :exit
    exit

    ATTENTION IL N'EST PAS FINIS, je suis bloqué la ou le texte est rouge.

    SI une bonne âme pouvait m'aider ou au moins me filer la commande

    Cordialement

  2. #2
    Membre éclairé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2012
    Messages
    359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Avril 2012
    Messages : 359
    Points : 738
    Points
    738
    Billets dans le blog
    2
    Par défaut
    Soit plus précis parce que la difficile de t'aide.

    un fichier dans un exe : c'est un batch camoufler dans un exe ??? si c'est ça décompresse le avec 7zip.
    lancer l'exe dans la fenêtre avec start: 'start /b'

    sinon je vois pas, j'ai compris ta question, au passage ta commande send me fait penser que tu aurais sûrement intérêt à faire ton truck en VBS pour avoir accès à SendKey.
    Le gourou dicte la ligne (de commande) à suivre ...

    Penser à lire le Tutoriel Batch ou a consulter la FAQ Batch et ses contributions,
    ainsi que le Cour sur la ligne de commande et des scripts

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Dessinateur pro
    Inscrit en
    Juin 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Dessinateur pro
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2013
    Messages : 8
    Points : 9
    Points
    9
    Par défaut
    Bonjour Init,

    Alors en gros:

    Mon principe c'est de lancer un fichier (rom de jeux) dans un .exe (émulateur).

    Je suis bloqué car lors du lancement de mon il passe sur cette fenêtre et du coup il ne prend plus en compte mes commandes suivantes.

    Si je détaille ce qui se passe:

    Je le vois exécuter le gens.exe
    Puis il cherche quelque chose comme si la suite de commandes lancées après ne faisaient rien
    je pensais ptet relancé un batch après genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ...
    start gens.exe
    call manip.bat
    ...
    et dans mon bat mettre mes commandes.

    Pense tu que cela lancera le fichier?

    Cordialement

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2013
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 29
    Points : 27
    Points
    27
    Par défaut
    Bonjour,

    Utilise Puis met ton code normalement ça devrait mieux marcher

    Pierre

  5. #5
    Membre éclairé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2012
    Messages
    359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Avril 2012
    Messages : 359
    Points : 738
    Points
    738
    Billets dans le blog
    2
    Par défaut
    Il n'est pas possible d'insérer des commandes dans un process en batch (la commande 'start' crée un nouveau processus). Deux option s'offre à toi:

    lancer gen.exe dans un nouveau processus puis utilisé un VBS pour insérer des frappes de touche avec la méthode sendKeys()
    Code bat : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    start gens.exe
    rem appel du script vbs
    cscript /b insert.vbs

    dans ce cas le vbs pourrait être
    Code vbs : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    'VBScript
    Set WshShell = WScript.CreateObject("WScript.Shell")
    
    'WshShell.Run "chemin_d_accès\gens.exe"
    WshShell.AppActivate "gens"
    
    WshShell.SendKeys "Hello World!"
    WshShell.SendKeys "{ENTER}"
    WshShell.SendKeys "abc"
    WshShell.SendKeys "{CAPSLOCK}"
    WshShell.SendKeys "def"
    
    ' Une fois que tu as finit, il faut détruire l'objet
    Set WshShell = Nothing
    plus d'info sur sendKeys ici: http://social.technet.microsoft.com/...ys-method.aspx

    si gen.exe prend des paramètre de commande peut être que se que tu cherche à faire est possible via ces paramètre
    Code bat : Sélectionner tout - Visualiser dans une fenêtre à part
    start gens.exe <paramètre>

    Edit: j'ai modifié le VBS !!!ATTENTION!!!
    Le gourou dicte la ligne (de commande) à suivre ...

    Penser à lire le Tutoriel Batch ou a consulter la FAQ Batch et ses contributions,
    ainsi que le Cour sur la ligne de commande et des scripts

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Dessinateur pro
    Inscrit en
    Juin 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Dessinateur pro
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2013
    Messages : 8
    Points : 9
    Points
    9
    Par défaut
    Salut merci à vous deux, je test ça dès que j'ai 5 min.

    Jamais fait de VBS mais pas grave, je vais faire comme pour le batch, je test, ça bug, je refait, je test, ça bug moins, je refait et ainsi de suite

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Dessinateur pro
    Inscrit en
    Juin 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Dessinateur pro
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2013
    Messages : 8
    Points : 9
    Points
    9
    Par défaut
    Re Bonjour,

    Voila ou j'en suis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    'VBScript
    Set WshShell = WScript.CreateObject("WScript.Shell")
    
    'WshShell.Run "C:\Users\PC-DESSIN\Desktop\test\gens.exe"
    WshShell.AppActivate "Gens - Idle"
    
    WshShell.SendKeys "^{o}"
    WshShell.SendKeys "streetsofrage2.md"
    WshShell.SendKeys "{ENTER}"
    WshShell.SendKeys "%{ENTER}"
    
    ' Une fois que tu as finit, il faut détruire l'objet
    Set WshShell = Nothing
    Le Script se lance mais lors de l'écriture de "streetsofrage2.md" , il bug et me dit qu'il est impossible d'ouvrir "reetsofrage2.md" !

    Comme si le "s" de "streets" passé à la trappe

    J'ai pas tenté avec 2 "s" , je tente et je reviens si sa bug !


    EDIT :

    HAHAHAHAHAHA TROUVE, Voila le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    'VBScript
    Set WshShell = WScript.CreateObject("WScript.Shell")
    
    'WshShell.Run "C:\Users\PC-DESSIN\Desktop\test\gens.exe"
    WshShell.AppActivate "Gens - Idle"
    
    WshShell.SendKeys "^{o}"
    WScript.Sleep 500
    WshShell.SendKeys "streetsofrage2.md"
    WScript.Sleep 500
    WshShell.SendKeys "{ENTER}"
    WScript.Sleep 500
    WshShell.SendKeys "%{ENTER}"
    
    ' Une fois que tu as finit, il faut détruire l'objet
    Set WshShell = Nothing

  8. #8
    Membre éclairé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2012
    Messages
    359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Avril 2012
    Messages : 359
    Points : 738
    Points
    738
    Billets dans le blog
    2
    Par défaut
    Passe en résolut alors

    Et tu peux enlever la ligne suivante
    Code vbs : Sélectionner tout - Visualiser dans une fenêtre à part
    'WshShell.Run "C:\Users\PC-DESSIN\Desktop\test\gens.exe"

    le caractère ' en début de ligne définit que la ligne est un commentaire
    Le gourou dicte la ligne (de commande) à suivre ...

    Penser à lire le Tutoriel Batch ou a consulter la FAQ Batch et ses contributions,
    ainsi que le Cour sur la ligne de commande et des scripts

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

Discussions similaires

  1. ne pas autoriser l'ajout de fichier dans ftp
    Par Invité dans le forum Administration système
    Réponses: 7
    Dernier message: 14/02/2012, 16h38
  2. [WD16] Images ou fichier dans l'exe
    Par WDKyle dans le forum WinDev
    Réponses: 4
    Dernier message: 26/03/2011, 18h08
  3. fichiers dans un exe
    Par orelero dans le forum Windows
    Réponses: 5
    Dernier message: 22/06/2006, 20h11
  4. Inclure un fichier dans l'exe
    Par bandit boy dans le forum C++Builder
    Réponses: 5
    Dernier message: 11/05/2006, 20h45

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