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 .bat et cacher la fenetre dos


Sujet :

Scripts/Batch

  1. #1
    Membre actif
    Inscrit en
    Juillet 2003
    Messages
    407
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 407
    Points : 252
    Points
    252
    Par défaut lancer un .bat et cacher la fenetre dos
    hello ;
    et bien lorsque je lance mon .bat , la fenetre dos noir apparait toujours;

    y a t ilun moyen pour la cacher ???

    et merci
    ;-) cordialement

  2. #2
    Rédacteur
    Avatar de Louis-Guillaume Morand
    Homme Profil pro
    Cloud Architect
    Inscrit en
    Mars 2003
    Messages
    10 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Cloud Architect
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 10 839
    Points : 28 252
    Points
    28 252
    Par défaut
    il doit y avoir moyen MAIS si tu fais un raccourci avec parametre. c'est comme les fichiers .reg, si tu mets un raccourci avec le parametre -s, ca se fait caché derriere sans confirmation

    sinon, comment le .bat pourrait deviner comment il doit se lancer sachant que pour savoir, il faut se lancer (ca tourne la tete :p)
    par contre, je ne connais pas le parametre s'il existe pour le lancer en bkgd
    moi c'est Louis-Guillaume, ni Louis, ni Guillaume mais Louis-Guillaume et je n'aide pas ceux qui écorchent mon nom

  3. #3
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 930
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 930
    Points : 59 398
    Points
    59 398
    Billets dans le blog
    2
    Par défaut
    Bonjour !

    Tu peux toujours définir des coordonnées négatives pour la position de la fenêtre dans la définition du raccourci (par exemple, -1000,-1000).
    Ainsi, la fenêtre DOS est invisible.
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  4. #4
    Membre actif
    Inscrit en
    Juillet 2003
    Messages
    407
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 407
    Points : 252
    Points
    252
    Par défaut
    ok , merci pour les réponses ;
    je vais tester
    ;-) cordialement

  5. #5
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 749
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 749
    Points : 10 666
    Points
    10 666
    Billets dans le blog
    3
    Par défaut
    start /MIN monbat.bat ?

  6. #6
    Membre actif
    Inscrit en
    Juillet 2003
    Messages
    407
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 407
    Points : 252
    Points
    252
    Par défaut
    pour -s ça n'existe pas !

    pour les coordonnées négatives de la position de la fenêtre dans la définition du raccourci (par exemple, -1000,-1000). il n'accepte pas des valeurs < à 1


    meme start /MIN monbat.bat ça ne marche pas
    ;-) cordialement

  7. #7
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 930
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 930
    Points : 59 398
    Points
    59 398
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par peppena
    pour les coordonnées négatives de la position de la fenêtre dans la définition du raccourci (par exemple, -1000,-1000). il n'accepte pas des valeurs < à 1
    Je jure que ça marche sous Windows 2000 !
    Quel est ton OS ?

    Au fait, tu peux aussi essayer avec (3000,3000) !
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  8. #8
    Membre habitué
    Inscrit en
    Juin 2002
    Messages
    195
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 195
    Points : 136
    Points
    136
    Par défaut
    Tu peux creer un lien vers ton bat
    dans ses caracteristiques tu peux preciser le type d'éxécution
    normal - plein ecran - reduit

  9. #9
    Membre actif
    Inscrit en
    Juillet 2003
    Messages
    407
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 407
    Points : 252
    Points
    252
    Par défaut
    Citation Envoyé par clovis
    Tu peux creer un lien vers ton bat
    dans ses caracteristiques tu peux preciser le type d'éxécution
    normal - plein ecran - reduit
    c ce que je fais actuellement mais , enfait avec reduit il ya une icone dans la berre de tache , si tu clique dessue ca affiche la fenetre dos !!

    Citation Envoyé par Alcatîz
    Je jure que ça marche sous Windows 2000 !
    Quel est ton OS ?
    pour moi ça marche pas
    je suis sur windows2000 professionnal !!
    ;-) cordialement

  10. #10
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    bon allé, aujourd'hui, les progs sont à 0€!

    http://sub0.developpez.com/delphi/gobat.zip (188 ko)

    Ce programme lance le fichier go.bat sans afficher aucune fenêtre...
    Voici la source Delphi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    PROGRAM gobat;
    USES Forms,ShellApi;{$R *.RES}
    BEGIN
     ShellExecute(Application.Handle,NIL,'go.bat','','',0);
    END.
    Peut-être que ça donnera envie de vous essayer au développement...
    Télécharger Delphi en version gratuite!
    à+
    De retour parmis vous après 10 ans!!

  11. #11
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Salut!

    Vous avez été "nombreux" à me demander par MP le programme compilé (c'est vrai que télécharger Delphi juste pour compiler un prog, c'est pas cool).

    http://sub0.developpez.com/delphi/gobat.zip

    J'en profite pour vous dire que je possède un programme qui convertit les fichiers BAT en EXE, ça pourra aussi vous intérresser je pense :

    http://sub0.developpez.com/bat2exe.zip

    à+
    De retour parmis vous après 10 ans!!

  12. #12
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415

  13. #13
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par peppena Voir le message
    hello ;
    et bien lorsque je lance mon .bat , la fenetre dos noir apparait toujours;

    y a t il un moyen pour la cacher ???

    et merci

    Lorsque l'on lance un exécutable fait pour tourner sous Windows, si on le lance avec la commande "system", la fenêtre noire du DOS apparaît, par contre elle n'apparaît pas si on le lance avec spawn().
    Mais si on lance la commande BAT avec un spawn, le fenêtre DOS apparaît, et de même s'il s'agit d'un exécutable prévu pour tourner sous DOS.
    Alors comment cacher cette foutue fenêtre DOS.

    Première réponse) Si on lance la commande BAT avec:
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    winexec("TOTO.BAT",SW_HIDE);
    (à supposer que la commande BAT s'appelle "TOTO"), cela marche; le batch TOTO.BAT s'effectue bien de manère cachée sans l'apparition de la fenêtre noire du DOS; cependant, cette commande rend immédiatement la main sans attendre la fin de l'exécution du batch, et on ne sait pas quand le batch se termine.


    Deuxième réponse) Finalement je vous donne la solution, une petite procédure qui permet de lancer n'importe quel EXE ou BAT, sans l'apparition de la fenêtre noire du DOS, et attendant la fin de l'exécution de la commande:
    Code C : 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
    void ExecuteCommande(char* Commande)
    { 
       STARTUPINFO si;
        PROCESS_INFORMATION pi;
     
        ZeroMemory( &si, sizeof(si) );
        si.cb = sizeof(si);
        ZeroMemory( &pi, sizeof(pi) );
     
    // spécifier que la fenêtre du process lancé doit être cachée
     
        si.dwFlags=STARTF_USESHOWWINDOW;
        si.wShowWindow=SW_HIDE;
     
     
        // Start the child process. 
        if( !CreateProcess( NULL,   // No module name (use command line)
            Commande,        // Command line
            NULL,           // Process handle not inheritable
            NULL,           // Thread handle not inheritable
            FALSE,          // Set handle inheritance to FALSE
            0,              // No creation flags
            NULL,           // Use parent's environment block
            NULL,           // Use parent's starting directory 
            &si,            // Pointer to STARTUPINFO structure
            &pi )           // Pointer to PROCESS_INFORMATION structure
        ) 
        {
            AfxMessageBox( "Echec CreateProcess");
            return;
        }
     
        // Wait until child process exits.
        WaitForSingleObject( pi.hProcess, INFINITE );
     
        // Close process and thread handles. 
        CloseHandle( pi.hProcess );
        CloseHandle( pi.hThread );
    }


    On passe en paramètre à cette procédure le nom de l'application à lancer (ex: ExecuteCommande("TOTO.BAT"); )
    Cela marche garanti, et la syntaxe ext garantie correcte(testée avec mon application où je l'utilise).
    Autant que ma recherche serve à d'autres.

  14. #14
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Salut xpascal.
    Avec Delphi, c'est encore plus simple, en utilisant des fonctions de haut niveau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    PROGRAM gobat;
    USES Forms,ShellApi;{$R *.RES}
    BEGIN
     ShellExecute(Application.Handle,NIL,'go.bat','','',0);
    END.
    De retour parmis vous après 10 ans!!

  15. #15
    Membre régulier
    Profil pro
    embedded software engineer
    Inscrit en
    Juin 2002
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : embedded software engineer

    Informations forums :
    Inscription : Juin 2002
    Messages : 181
    Points : 101
    Points
    101
    Par défaut
    salut,
    pour info,
    vous pouvez lire le résultat des commandes :
    cmd /help
    start /help

    toutes les info sont dedans.

    On peut personnaliser les fenêtres selon le nom quelle a. C'est enregistré dans le registre.

  16. #16
    Candidat au Club
    Profil pro
    Ingénieur sécurité
    Inscrit en
    Juillet 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Solution
    Salut Ben si tu ne veux pas que ta fenêtre soi vu fait,

    start /B /MIN monbat.bat

    et le tour est joué !

  17. #17
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Points : 6 789
    Points
    6 789
    Billets dans le blog
    15
    Par défaut
    Citation Envoyé par Tr@cker DPP Voir le message
    Salut Ben si tu ne veux pas que ta fenêtre soi vu fait,

    start /B /MIN monbat.bat

    et le tour est joué !

    Ce topic pourrait me résoudre pas mal de problème sur un projet actuel, malheureusement je suis loin d'être au top sur les batch et j'aimerai donc savoir à quel endroit cette commande doit être mise?

    D'avance merci
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  18. #18
    Candidat au Club
    Profil pro
    Ingénieur sécurité
    Inscrit en
    Juillet 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Rep !
    Dis moi comment tu procède pour executer ton bat ?

    mon MSN c'est moussa282002@hotmail.com au cas où !

  19. #19
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Points : 6 789
    Points
    6 789
    Billets dans le blog
    15
    Par défaut
    Citation Envoyé par Tr@cker DPP Voir le message
    Dis moi comment tu procède pour executer ton bat ?
    Ben je le crée et puis ensuite je double clique dessus... rien de plus simple.

    Pour l'info mon .bat me permet de lancer un script python avec python (dans le cas où celui-ci n'est pas dans le path par exemple).
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  20. #20
    Candidat au Club
    Profil pro
    Ingénieur sécurité
    Inscrit en
    Juillet 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3
    Points : 4
    Points
    4
    Par défaut essai
    Essai de jouer sur une exécution sans pause de ton bat pour voir !

    mais si tu veux on se vois sur MSN pour être plus "speed" !

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Cacher la fenetre DOS à l'ouverture d'un .py
    Par johnraikonen dans le forum Tkinter
    Réponses: 2
    Dernier message: 30/10/2010, 15h32
  2. [2.0] Comment cacher la fenetre DOS du app console ?
    Par freddyboy dans le forum Framework .NET
    Réponses: 5
    Dernier message: 11/12/2009, 16h43
  3. Cacher la fenetre DOS
    Par jojoe dans le forum Scripts/Batch
    Réponses: 10
    Dernier message: 30/07/2007, 11h14
  4. Cacher la fenetre DOS
    Par jeanmi681 dans le forum C++
    Réponses: 19
    Dernier message: 12/06/2006, 12h12
  5. [Executable]Comment lancer son programme sans fenêtre DOS
    Par the_ugly dans le forum Général Java
    Réponses: 11
    Dernier message: 09/11/2005, 08h16

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