Lancent differé d'un programme au demarrage

maximouss Messages postés 7 Statut Membre -  
 nico -
Bonjour,

J'ai une application utilisant une base oracle xe sur un serveur en windows xp qui doit tout le temps être active.

Actuellement, je la lances manuellement après le demarrage du PC et je la laisse tourner continuellement.

J'aimerais programmer un reboot auto de mon serveur tous les dimanches ; ça je sais le faire, ça fonctionne.
Le problème c'est qu'a chaque fois je dois relancer l'application à la main.

J'ai bien pensé la rajouter aux programmes de demarrage, mais cela pose un problème, la base oracle xe n'est pas encore complètement lancée et ça bug.

Il faudrait que l'application soit lancée 5mn après l'ouverture de session.

J'ai pensé à faire une tâche planifiée s'executant au démarrage,mais je n'arrive pas à mettre en place un délai avant que l'application se lance.

Comment puis-je faire pour ce lancement automatique différé ?

Cordialement.

Maximouss.
Configuration: Windows Vista
Internet Explorer 7.0

9 réponses

  1. bitrate Messages postés 441 Date d'inscription   Statut Membre Dernière intervention   98
     
    si vous aimez les scripts y'a mieux que .bat. un petit fichier .vbs c'est mieux :

    exemple.vbs

    Dim oShell
    
    WScript.Sleep 10*1000	' attendre 10 secondes
    Set oShell = WScript.CreateObject("WScript.Shell")
    oShell.run("notepad.exe")


    lance notepad au bout de 10 secondes

    ++
    3
    1. plubarj Messages postés 103 Statut Contributeur 6
       
      Ouaip, merci! Faut absolument que je me mette au VBscript...
      0
    2. lanaken
       
      Parfait en vbs !
      Merci
      0
    3. analog101 Messages postés 173 Date d'inscription   Statut Membre Dernière intervention   3
       
      donc il faut faire un raccourci du.vbs et le mettre dans démarrage ? J'ai XP
      0
    4. nico
       
      Bonjour, ce que vous cherchez est le "planificateur de taches"
      0
  2. plubarj Messages postés 103 Statut Contributeur 6
     
    eheh, dommage qu'il n'y ait pas de statut 'à demi-résolu' pour les posts CCM ;)

    Alors il faut faire un petit batch file avec un délai; qqch du genre:
    PING -n 300 127.0.0.1>nul
    C:\Program Files\monappli.exe
    Le Ping -n x permet de commander un délai de x secondes (+ de détails https://groups.google.com/forum/#!msg/alt.msdos.batch.nt/nSRpfQE-lko/WEWG9aCfSoAJ
    Evidemment, tu crées une tâche planifiée pour démarrer ton batch.
    C'est mieux?
    2
  3. furaxou
     
    Salut salut !

    je suis dans le meme cas que toi et j'ai réalisé en .bat cette solution la :

    @echo on
    PING -w 1000 127.0.0.1>nul
    cd c:\
    cd Documents and Settings
    cd #NOM-DE-MA-SESSION"
    cd Local Settings
    cd Application Data
    cd TeamSpeak 3 Client
    ts3client_win32.exe

    Et oui, allez savoir pourquoi, je suis obligé d'utiliser la commande "CD" pour emmener Windows dans le dossier ou ce trouve mon "exe" ( dans mon cas le TS3 client ) sinon, niquel la commande ping, j'aurais jamais deviné tous seul ^

    Et cette solution est naturellement compatible avec tous les system microsoft actuellement sur le marché
    1
  4. plubarj Messages postés 103 Statut Contributeur 6
     
    Hello maximouss
    Si tu connais l'heure du redémarrage (t) et le temps de reboot (x), pourquoi ne pas planifier une tache à t+x+une petite marge?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. maximouss Messages postés 7 Statut Membre 1
     
    Salut Plubarj,

    Bien pensé ;)

    Mais cela ne prends pas en compte les coupures electriques ou les redemarrages inopinés qui pourraient se produire.

    Je vais deja mettre en place cette option de demarrage avec une marge, mais j'aimerais par la suite, avoir une solution qui ne se base pas sur une heure, mais sur un laps de temps après demarrage.

    Merci pour cette demi-solution :D

    Cordialement.
    0
  7. plubarj Messages postés 103 Statut Contributeur 6
     
    Je pense à une autre solution (à tester): dans les propriétés de la tâche plannifiée, tu devrais avoir une option (sous l'onglet Paramètres) 'Ne démarrer la tâche que si l'ordi est inactif depuis:'.
    En mettant un petit délai là dedans, tu as une chance de résoudre ton problème?
    Tiens moi au courant si ça fonctionne!
    Cheers
    0
  8. maximouss Messages postés 7 Statut Membre 1
     
    Alors, voici les resultats de mes tests :

    1) PING -n 300 127.0.0.1>nul
    C:\Program Files\monappli.exe

    N'a pas fonctionné sur le serveur

    2) 'Ne démarrer la tâche que si l'ordi est inactif depuis:'

    N'a pas focntionné non plus.... Peut etre que le gestionnaire du RAID crée une activité, ou alors easyphp ou autre chose...

    3) Startup Delayer

    Fonctionne Nickel, mais comme le dit Plusbarj, ce n'est pas une methode très pro pour un serveur... enfin bon, cela me convient parfaitement !!!

    Les 2 premieres solution spourraient peut etre fonctionner en cherchant un peu pourquoi ça n'a pas voulu marcher, mais bon, pour moi le problème est résolu et je ne vais m'attarder dessus.

    Un grand merci à vous 2 !!!

    Cordialement.
    0
  9. bitrate Messages postés 441 Date d'inscription   Statut Membre Dernière intervention   98
     
    peut faire + pro et + simple avec 2 lignes de code en win32 :

    Sleep() et CreateProcess()... parce que le "ping" ça fait gros bricolage lol
    0
    1. plubarj Messages postés 103 Statut Contributeur 6
       
      Hello bitrate
      Ca marche chez toi 'Sleep'?
      Pas eu de succès de mon côté (d'où le ping...).
      Cheers
      0