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 :

Possible de "cacher" l’exécution d'une commande MS-DOS? [Batch]


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 36
    Par défaut Possible de "cacher" l’exécution d'une commande MS-DOS?
    Bonjour,
    Oui encore moi en 3 jours 3 problème mais quand on apprend des milliers de questions s'offre à nous!
    Donc voilà ma question et mon problème :

    Est-il possible de cacher l’exécution d'une commande batch par exemple se programme :

    Nom : Capture.PNG
Affichages : 4246
Taille : 11,7 Ko

    Une fois actionné il va afficher la fenêtre :

    Nom : Capture.PNG
Affichages : 4653
Taille : 34,5 Ko

    Ce qui est normal mais est il possible de cacher cette fenêtre non pas la réduire mais belle et bien la cacher ?
    J'ai lu une multitude de forum sur se sujet mais c'est vague des fois c'est possible des fois non ?
    Alors je vous demande a vous Batcheur est il possible de le faire ?

    Si quelqu'un à la réponse merci de me la faire part !

    Pour info mon Batch est le suivant :

    COLOR 3
    xcopy /s "%Systemdrive%\Users\%Username%\Pictures\*.jpg" "photos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Pictures\*.PNJ" "photos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Pictures\*.gif" "photos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Pictures\*.tif" "photos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Desktop\*.gif" "photos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Desktop\*.tif" "photos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Desktop\*.jpg" "photos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Desktop\*.PNJ" "photos\"
    ATTRIB Photos +h
    CLS

    COLOR 2
    xcopy /s "%Systemdrive%\Users\%Username%\Videos\*.MOV" "Videos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Pictures\*.MOV" "Videos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Videos\*.MP4" "Videos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Pictures\*.MP4" "Videos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Videos\*.3gp" "Videos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Videos\*.mpg" "Videos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Pictures\*.mpg" "Videos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Pictures\*.3gp" "Videos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Desktop\*.3gp" "Videos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Desktop\*.MP4" "Videos\"
    xcopy /s "%Systemdrive%\Users\%Username%\Desktop\*.mpg" "Videos\"
    ATTRIB Videos +h
    exit






    (Juste pour le plaisir je le trouvais marrant)

  2. #2
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut

    Tu dois créer un vbscript avec ce code et l’enregistrer sous le nom : CacherMonBat.vbs dans le même dossier de ton batch
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CreateObject("Wscript.Shell").Run "PV.bat",0,True
    puis tu l'exécute

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 36
    Par défaut
    Merci beaucoup ! Mais comment faire pour voir si l’exécution est toujours en cour ou pas ? En gros comment sait on qu'il est bien exécuté ou qu'il est en train de "travailler" ?

  4. #4
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut
    Citation Envoyé par clémsdos Voir le message
    Merci beaucoup ! Mais comment faire pour voir si l’exécution est toujours en cour ou pas ? En gros comment sait on qu'il est bien exécuté ou qu'il est en train de "travailler" ?

    J'ai refais ton batch autrement et je l'ai testé sur mon PC
    Pour les dossiers destinations pour moi c'est DossierPhotos=C:\Temp\Photos\ et DossierVideos=C:\Temp\Videos\
    Donc c'est à toi de l'adapter pour tes besoins
    Remarque : Au lieu d'utiliser
    %Systemdrive%\Users\%Username%\Pictures\
    j'ai utilisé ceci :
    %USERPROFILE%\pictures\

    PV.bat
    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
    17
    18
    19
    20
    21
    @echo off
    Title Sauvegarde les Photos et les Videos by Hackoo
    mode con cols=60 lines=6 & color 9B
    SET DossierPhotos=C:\Temp\Photos\
    SET DossierVideos=C:\Temp\Videos\
    Set LogTmpFile=TmpCopyLog.txt
    Set LogFile=CopyLog.txt
    set backupcmd=xcopy /s /c /d /h /i /r /y
    Set ExtPhotos=JPG GIF TIF PNG
    Set ExtVideos=MOV MP4 MPG 3GP
    If Not Exist %DossierPhotos% MD %DossierPhotos%
    If Not Exist %DossierVideos% MD %DossierVideos% 
    echo Veuillez patienter la copie est en cours .....
    For %%a in (%ExtPhotos%) do %backupcmd% "%USERPROFILE%\pictures\*.%%a" "%DossierPhotos%" > %TMP%\%LogTmpFile%
    For %%a in (%ExtPhotos%) do %backupcmd% "%USERPROFILE%\Desktop\*.%%a" "%DossierPhotos%" >> %TMP%\%LogTmpFile%
    For %%a in (%ExtVideos%) do %backupcmd% "%USERPROFILE%\pictures\*.%%a" "%DossierVideos%" >> %TMP%\%LogTmpFile%
    For %%a in (%ExtVideos%) do %backupcmd% "%USERPROFILE%\Desktop\*.%%a" "%DossierVideos%" >> %TMP%\%LogTmpFile%
    For %%a in (%ExtVideos%) do %backupcmd% "%USERPROFILE%\Video\*.%%a" "%DossierVideos%" >> %TMP%\%LogTmpFile%
    cmd /U /C Type %TMP%\%LogTmpFile% > %LogFile%
    Del  %TMP%\%LogTmpFile%
    Start %LogFile%
    Le Vbscript : CacherMonBat.vbs
    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
    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
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    Option Explicit
    Dim MyCmd,Temp,Titre,MsgTitre,MsgAttente
    Dim Copyright,oExec,ws,LogTmpFile,LogFile,fso
    Copyright = "[ XcopyScript © Hackoo Crackoo © 2014 ]"
    Set ws = CreateObject("WScript.Shell")
    Set fso = CreateObject("Scripting.FileSystemObject")
    Temp = ws.ExpandEnvironmentStrings("%Temp%")
    Titre = "Copie de Sauvegarde " & Copyright
    MsgAttente = "Veuillez patienter la copie de Sauvegarde est en cours  . . . . ."
    Call CreateProgressBar(Titre,MsgAttente)
    Call LancerProgressBar()
    Call Pause(1)
    Call Executer("PV.bat",0,True)
    Call FermerProgressBar()
    '***********************************************************************************************************
    Function Executer(StrCmd,Console,bWaitOnReturn)
       Dim ws,MyCmd,Resultat
       Set ws = CreateObject("wscript.Shell")
    'La valeur 0 pour cacher la console MS-DOS
       If Console = 0 Then
          MyCmd = "CMD /C " & StrCmd & ""
    	  On Error Resume Next
          Resultat = ws.run(MyCmd,Console,bWaitOnReturn)
          If Resultat = 0 and Err = 0 Then
    	  'MsgBox "Termine !",VbInformation,"Termine !"
          Else
             MsgBox "Une erreur inconnue est survenue !" & Vbcr & Err.Description ,16,"Une erreur inconnue est survenue !"
          End If
       End If
    'La valeur 1 pour montrer la console MS-DOS
       If Console = 1 Then
          MyCmd = "CMD /K " & StrCmd & " "
          Resultat = ws.run(MyCmd,Console,bWaitOnReturn)
          If Resultat = 0 Then
          Else
             MsgBox "Une erreur inconnue est survenue !",16,"Une erreur inconnue est survenue !"
          End If
       End If
       Executer = Resultat
    End Function
    '***********************************************************************************************************
    Sub CreateProgressBar(Titre,MsgAttente)
        Dim ws,fso,f,f2,ts,ts2,Ligne,i,fread,LireTout,NbLigneTotal,Temp,PathOutPutHTML,fhta,oExec
        Set ws = CreateObject("wscript.Shell")
        Set fso = CreateObject("Scripting.FileSystemObject")
        Temp = WS.ExpandEnvironmentStrings("%Temp%")
        PathOutPutHTML = Temp & "\Barre.hta"
        Set fhta = fso.OpenTextFile(PathOutPutHTML,2,True)
        fhta.WriteLine "<HTML>"
        fhta.WriteLine "<HEAD>"
        fhta.WriteLine "<Title>  " & Titre & "</Title>"
        fhta.WriteLine "<HTA:APPLICATION"
        fhta.WriteLine "ICON = ""magnify.exe"" "
        fhta.WriteLine "BORDER=""THIN"" "
        fhta.WriteLine "INNERBORDER=""NO"" "
        fhta.WriteLine "MAXIMIZEBUTTON=""NO"" "
        fhta.WriteLine "MINIMIZEBUTTON=""NO"" "
        fhta.WriteLine "SCROLL=""NO"" "
        fhta.WriteLine "SYSMENU=""NO"" "
        fhta.WriteLine "SELECTION=""NO"" "
        fhta.WriteLine "SINGLEINSTANCE=""YES"">"
        fhta.WriteLine "</HEAD>"
        fhta.WriteLine "<BODY text=""white""><CENTER><DIV><SPAN ID=""ProgressBar""></SPAN>"
        fhta.WriteLine "<span><marquee DIRECTION=""LEFT"" SCROLLAMOUNT=""3"" BEHAVIOR=ALTERNATE><font face=""Comic sans MS"">" & MsgAttente &"</font></marquee></span></DIV></CENTER></BODY></HTML>"
        fhta.WriteLine "<SCRIPT LANGUAGE=""VBScript""> "
        fhta.WriteLine "Set ws = CreateObject(""wscript.Shell"")"
        fhta.WriteLine "Temp = WS.ExpandEnvironmentStrings(""%Temp%"")"
        fhta.WriteLine "Sub window_onload()"
        fhta.WriteLine "    CenterWindow 500,90"
        fhta.WriteLine "    Self.document.bgColor = ""DarkOrange"" "
        fhta.WriteLine " End Sub"
        fhta.WriteLine " Sub CenterWindow(x,y)"
        fhta.WriteLine "    Dim iLeft,itop"
        fhta.WriteLine "    window.resizeTo x,y"
        fhta.WriteLine "    iLeft = window.screen.availWidth/2 - x/2"
        fhta.WriteLine "    itop = window.screen.availHeight/2 - y/2"
        fhta.WriteLine "    window.moveTo ileft,itop"
        fhta.WriteLine "End Sub"
        fhta.WriteLine "</script>"
        fhta.close
    End Sub
    '**********************************************************************************************
    Sub LancerProgressBar()
        Set oExec = Ws.Exec("mshta.exe " & Temp & "\Barre.hta")
    End Sub
    '**********************************************************************************************
    Sub FermerProgressBar()
        oExec.Terminate
    End Sub
    '**********************************************************************************************
    Sub Pause(NSeconds)
        Wscript.Sleep(NSeconds*1000)
    End Sub  
    '**********************************************************************************************
    Function DblQuote(Str)
        DblQuote = Chr(34) & Str & Chr(34)
    End Function
    '**********************************************************************************************

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 36
    Par défaut
    Waw c'est vraiment incroyable ce que tu as fais je suis vraiment admiratif par ton travaille.
    Comment à tu appris tous cela sur internet avec un tuto ? pourrai tu m'apprendre les bases
    j'aimerai vraiment pouvoir créer de tels choses bravo à toi et merci braucoup !

  6. #6
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut

    Tu m'as fait pondu un nouveau Vbscript ; Teste-le .C'est un script 2 en 1 et n'oublies surtout pas de voter


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

Discussions similaires

  1. executer une commande MS-DOS
    Par keibenoit dans le forum Access
    Réponses: 3
    Dernier message: 06/06/2006, 18h29
  2. Utiliser une commande du DOS
    Par nkd dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 21/10/2005, 07h34

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