[Powershell] - Loop (until) + Close un process ?

- Loop (until) + Close un process ? [Powershell] - Shell/Batch - Programmation

Marsh Posté le 30-06-2016 à 18:28:50    

Bonjour
 
J'utilise un script pour dl la dernière mise à jour d'un mini jeu et le lancer. Le script fonctionne très bien :
 

Code :
  1. powershell do{sleep 5;(New-Object Net.WebClient).DownloadFile('update.exe','%APPDATA%\update.exe')}while(!$?);&'%APPDATA%\update.exe'


Cependant j'ai un process (publicité) qui s'ouvre à chaque fois, donc j'aimerais que mon script le ferme automatiquement.
 
- Ma question: Comment pourrai-je modifier mon script pour ajouter un loop + stop-process pour kill le second processus qui apparaîtra (une publicité pour un autre jeu) ?
 
J'ai essayé quelque chose, j'ai mis le rapport sur pastebin : http://pastebin.com/SZ1YLwLv
 
NB : Je souhaite pouvoir écrire le script sur une ligne unique afin de l'écrire en une fois dans la boîte exécuter (windows + r).
 
NB : J'ai lu qu'il peut être intéressant de remplacer %APPDATA% par $PWD pour rendre le code plus "propre".

Message cité 1 fois
Message édité par etmila le 30-06-2016 à 18:29:11
Reply

Marsh Posté le 30-06-2016 à 18:28:50   

Reply

Marsh Posté le 30-06-2016 à 19:03:14    

etmila a écrit :

NB : Je souhaite pouvoir écrire le script sur une ligne unique afin de l'écrire en une fois dans la boîte exécuter (windows + r).

 

Tu peux mettre ton code dans un fichier .bat dans un des dossiers se trouvant dans la variable d'environnement PATH, ainsi il suffira de tapper le nom du fichier (sans l'extension .bat) dans exécuter pour lancer le script. J'utilise ça pour démarrer mes programmes usuels, un petit .bat pour chaque programme dans Windows/System32 qui contient le chemin+nom de l'exécutable. Ansi pour Firefox il me suffit de faire Windows+R, ff + Entrée. :)

 

Pour ta publicité, si l'adresse du download est fixe (et non générée par du JS ou autre ce qui nécessite un navigateur) tu peux utiliser wget ou curl, ça devrait régler le problème.


Message édité par rat de combat le 30-06-2016 à 19:04:00
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed