Forum Clubic

Batch : retarder le demarrage d'un programme au démarrage

Bonjour a tous,
j’aimerais que x secondes après le démarrage de windows un fichier batch lance certain programme, Il faudrait inclure une tempo dans le fichier batch mais je ne sais pas comment faire.

Je n’ai presque jamais programmé de fichier batch , est ce que vous pourriez m’aider?

merci

Le meilleur truc à faire c’est un ping :slight_smile:

ping -n 3 127.0.0.1

-n 3 permet de spécifier la durée…

Crois moi c’est une des meilleures manières.

Sinon il existe powershell qui étend grandement le batch

Sinon il y a un petit programme C à faire:


#include <stdio.h>
#include <stdlib.h>
int main(int argc, char**argv)
{
        if (argc<2) return 1;

        int time=atoi(argv[1]);
        sleep(time);
        return 0;
}

sleep n’existe pas en mode commande pur, mais tu peux le trouver sous forme de commande externe :
par exemple
http://gammadyne.com/cmdline.htm#sleep
ou alors en unixlike

Pour ce qui est de son utilisation, tu le mets simplement dans ton fichier batch, juste avant la commande que tu veux lancer
Et en suite, tu mets le fichier batch dans Démarrage
(C:\Documents and Settings\xxxx\Menu Démarrer\Programmes\Démarrage)
pour qu’il soit exécuté au lancement de windows

ca marche mais dans lorsque l’invite de commade windows s’ouvre ca m’affiche “envoie d’une requete ping” est ce que c’est possible de masquer ca.
j’ai éssayer de mettre @ ping -n 5 127.0.0.1 mais rien y fait.

le @ c’est pour éviter l’écho de la ligne de commande
Pour le résultat, il faut que tu le rediriges dans un fichier pour ne pas qu’il s’affiche sur la sortie standard
@ping -n 5 127.0.0.1>nul
(sans espace entre @ et ping)

merci , finalement j’ai selectionner au niveau de la fenetre de commabde “reduire dans la barre des taches” comme ca on ne la voie pas, “enfin presque”