verification ouverture Wswin et Weatherlink + tâches plan.
Posté : 13 févr. 2011, 09:49
Bonjour,
Suite aux propositions de jackT sur le sujet "Vantage Pro2, rafales à 0 km/h et WsWin ?" je me demandais si on ne pouvait pas utiliser son verifie_wswin.bat pour les tâches planifiées...
Je suis donc allé voir de plus près comment je procédais et je pense qu'il y a un soucis.
Pour rappel, toutes les 5 minutes une taches planifiée est censée vérifier que Wswin ou Weatherlink ne sont pas ouverts et au cas où l'app ouverte est tuée puis wswin est démarré avec le paramètre /auto.
Voici les fichiers utilisés pour démarrer Wswin toutes les 5 minutes.
Tout d'abord WSWIN_START.BAT
qui ouvre donc WSWIN_START.CMD que voici :
Mais je pense que ces deux fichiers ne sont pas utilisés dans le bon ordre.
Si Wswin et/ou Weatherlink étaient ouverts au moment où la tâche planifiée est lancée, ils seront tués par taskkill de WSWIN_START.BAT et donc dans le fichier WSWIN_START.CMD il n'y a que la ligne start /d"d:\utilitaires\Wswin32" Wswin32.exe /AUTO qui est utile...
Il me semble qu'il faudrait commencer par vérifier que WsWin et/ou Weatherlink sont ouverts ou pas.
--> si l'un d'eux (ou les deux ?) est (sont) ouvert(s), c'est qu'à priori il(s) est(sont) planté(s) et taskill est alors utilisé puis Wswin est démarré.
--> si aucun n'est ouvert, Wswin est démarré.
Il faudrait donc remettre de l'ordre là-dedans et dans un seul fichier .bat
D'autre part, jackT nous a proposé l'exécutable nircmd.exe avec closeprocess et killprocess : ces commandes ne seraient-elles pas préférables à taskkill ?
Je vous demande donc de l'aide pour remettre un peu d'ordre là-dedans !
Merci
Suite aux propositions de jackT sur le sujet "Vantage Pro2, rafales à 0 km/h et WsWin ?" je me demandais si on ne pouvait pas utiliser son verifie_wswin.bat pour les tâches planifiées...
Je suis donc allé voir de plus près comment je procédais et je pense qu'il y a un soucis.
Pour rappel, toutes les 5 minutes une taches planifiée est censée vérifier que Wswin ou Weatherlink ne sont pas ouverts et au cas où l'app ouverte est tuée puis wswin est démarré avec le paramètre /auto.
Voici les fichiers utilisés pour démarrer Wswin toutes les 5 minutes.
Tout d'abord WSWIN_START.BAT
Code : Tout sélectionner
@echo off
echo ########################################################################
echo # "ATTENTION Mise a jour !!!" #
echo ########################################################################
%windir%\system32\taskkill.exe /f /im "WeatherLink592.exe"
%windir%\system32\taskkill.exe /f /im "wswin32.exe"
sleep 2
d:
cd utilitaires
cd scripts
start WSWIN_START.CMD
Code : Tout sélectionner
@echo off
echo #START.CMD#
FOR /F "tokens=2" %%I in ('TASKLIST /NH /FI "IMAGENAME eq Wswin32.exe"' ) DO SET PID=%%I
echo %PID%
IF not "%PID%"=="aucune" goto passe ELSE goto ouvre
:ouvre
FOR /F "tokens=2" %%I in ('TASKLIST /NH /FI "IMAGENAME eq WeatherLink592.exe"' ) DO SET PID=%%I
echo %PID%
IF not "%PID%"=="aucune" goto passe ELSE goto ouvre2
:ouvre2
start /d"d:\utilitaires\Wswin32" Wswin32.exe /AUTO
:passe
echo #Fin du traitement#
exit
Si Wswin et/ou Weatherlink étaient ouverts au moment où la tâche planifiée est lancée, ils seront tués par taskkill de WSWIN_START.BAT et donc dans le fichier WSWIN_START.CMD il n'y a que la ligne start /d"d:\utilitaires\Wswin32" Wswin32.exe /AUTO qui est utile...
Il me semble qu'il faudrait commencer par vérifier que WsWin et/ou Weatherlink sont ouverts ou pas.
--> si l'un d'eux (ou les deux ?) est (sont) ouvert(s), c'est qu'à priori il(s) est(sont) planté(s) et taskill est alors utilisé puis Wswin est démarré.
--> si aucun n'est ouvert, Wswin est démarré.
Il faudrait donc remettre de l'ordre là-dedans et dans un seul fichier .bat
D'autre part, jackT nous a proposé l'exécutable nircmd.exe avec closeprocess et killprocess : ces commandes ne seraient-elles pas préférables à taskkill ?
Je vous demande donc de l'aide pour remettre un peu d'ordre là-dedans !
Merci