Téléchargement et mise en veille

14 Octobre 2008 , Rédigé par Kyle Katarn Publié dans #informatique

Parmis les "téléchargeurs", qui ne s'est jamais posé la question : comment gérer téléchargement longues durés et mise en veille du PC ?

Grâce à des contributeurs de fr.comp.os.ms-windows, j'ai finallement réussi à faire ce que je désirais :

Sur un PC XP avec compte limité,  2 process réalisent du téléchargement

But : mettre la machine en standby ou en hibernation quand les 2 process ont fini leur téléchargement.

Ajout de l'envoi d'un mail pour indiquer la fin du téléchargement.

Prérequi :
- pour firefox, le module downthemall, qui permet de fermer firefox en fin de téléchargement
 
- net transport pour le téléchargement standard, qui peut aussi se fermer en fin de téléchargement

 - le freeware poweroff, utilisable avec un compte limité (pas comme psshutdown qui exige un compte avec pouvoir),  copié en system32 pour plus de simplicité.

-le module sleep.exe, qui permet de faire une pause dans un .bat,copié en \system32

- blat, copié en system32

- le script .bat qui va bien

dès que j'aurai le temps, je mettrais un vrai tuto accessible depuis l'accueil.

voici un exemple de script, avec les process firefox et calc (replacer calc par le process lié à net transport) :
dans ligne poweroff, on peut remplacer standby par hibernate dès que firefox et calc sont arrêtés, le PC se met en standby (ou hiber), pendant 10s, la demande peut être interrompue.

****************************************************
rem standby_at_end.bat
rem katarn 25 08 2008 création
rem lancement : double clic dans l'explorateur
rem dès que le process firefox et calc disparaissent, la machine se met en standby

:debut
tasklist | find /i "firefox"
if %errorlevel% EQU 1 goto process_autre
sleep 2
goto debut
rem le 1° process n'existe plus on attend la fin du 2°

:process_autre
 tasklist | find /i "nettransport"
if %errorlevel% EQU 1 goto fin
sleep 2
goto process_autre

:fin

rem envoi de mail

dir "le répertoire" > c:\Job\log\liste_tmp.txt


set eMail=xxxx@yyyy.fr
set subj=-s "Fin DL"
set server=-server smtp.yyyy.fr
::::::::::::::::: Now we run Blat!  :::::::::::::::::
blat  c:\Job\log\liste_tmp.txt -to %eMail% -f %eMail% %subj% %server%


del c:\Job\log\liste_tmp.txt


rem : passage en standby (poweroff copié en system32)
poweroff standby -msg "Fin des telechargement, arret programme..." -warn -warntime 10
exit

Partager cet article

Repost 0

Commenter cet article