Bonjour,
Je souhaite désinstaller une application qui se trouve sur une centaine de machine et donc je souhaiterais le faire mais à partir d'une GPO qui lancerait un fichier .bat.
Je ne sais pas par où commencer
merci d'avance
Version imprimable
Bonjour,
Je souhaite désinstaller une application qui se trouve sur une centaine de machine et donc je souhaiterais le faire mais à partir d'une GPO qui lancerait un fichier .bat.
Je ne sais pas par où commencer
merci d'avance
S'il y a un fichier de désinstallation pour ton logicieln appelle se fichier dans ton batch
Bonjour Kokotis,
ouai, c'est vrai, je n'y avais pas pensé. Je vais essayé comme cela.
bon mon fichier batch fonctionne très bien mais lorque le programme de désinstallation démarre, il y a une msgbox qui apparait et qui demande si oui ou non l'utilisateur souhaite désinstaller le programme.
Est ce que il existe une commande pour simuler un appuie sur la touche entrée ou une autre commande qui dit ok aux messages ?
Bonjour,
Il existe sur beaucoup d'installeur des paramètres pour rendre la fonction silencieuse :-)
Essais de faire "desinstalleur.exe /?" pour avoir plus d'info :-)
Sinon, essais de recuperer le type de désinstalleur (installshield, innosetup, autre) et faire une recherche sur google pour connaitre ses paramètres silencieux.
Si non tu peut simuler un pression sur la touche entrer, et ca fera comme si tu clique sur OK
Sais-tu comment faire Kokotis pour simuler un appuie sur la touche entrée ?
Il existe un commande pour ca, mais elle n'est pas dans windows, il faut la télécharger, c'est la powerkit, sur astase:
Code:Start /w PowerKit SendKeys "{entrer}"
Si non tu peut faire un vbs il n'y a pas de commande à télécharger:
Code:
1
2
3
4
5
6
7 set WshShell = WScript.CreateObject("WScript.Shell") WshShell.Run "desinstall.exe" WScript.Sleep 2000 WshShell.SendKeys "{Enter}"
je persiste est signe qu'un start /w "monapp.exe /s" serait plus simple mais bon vu qu'une recherche semble être particulierement pénible ...
bonne chance pour la suite :-)
Dans la mesure ou ce fichier batch est destiné à des pc utilisateur dans ma boite, je prefere la version avec le script.
Mais le code que tu m'as donné, le code
sera mis dans le fichier script créer ?Citation:
WshShell.Run "desinstall.exe"
WScript.Sleep 2000
WshShell.SendKeys "{Enter}"
Je te montre ce que j'ai fait
Et je voulais savoir si je pouvais mettre une code du genre sleep ou wait dans le code du batch pour attendre entre le moment ou la désinstallation se termine et la suppression du dossier ou se trouve le fichier uninst.exe. J'ai vu que dans ton code tu avais fait un Sleep.Code:
1
2
3
4
5
6
7
8
9
10
11 @echo off "C:\Program Files\OCS Inventory Agent\uninst.exe" pause IF EXIST c:\ocs-ng (RMDIR /S /Q c:\ocs-ng) IF EXIST c:\ocs-ng (RMDIR /S /Q C:\Program Files\OCS Inventory Agent) pause exit
C'est dans le VBS que j'ai mi un sleep, pour le batch il faut faire:
Code:ping 0.0.0.0 -n 5 > NUL
je n'avais pas vu ton post sloshy désolé.
Le code
J'ai telechargé le logiciel, installé et j'avais raison, le /s comme parametre désinstalle l'application sans faire apparaitre de fenetre !Code:
1
2
3
4
5
6
7 @echo off start /w "C:\Program Files\OCS Inventory Agent\uninst.exe /s" IF EXIST c:\ocs-ng (RMDIR /S /Q c:\ocs-ng) IF EXIST c:\ocs-ng (RMDIR /S /Q C:\Program Files\OCS Inventory Agent) pause exit
Bonne journée
EDIT://
On a posté en même temps !
J'ai testé ton code et il ne désinstalle pas l'application.
Cela fonctionne chez toi ? Que t'a t'il désinstallé ?
J'ai testé chez moi:
start /w "C:\Program Files\OCS Inventory Agent\uninst.exe /s"
Ce qui à lancé uninst.exe sans la fenetre (on a vu une fenetre passé furtivement).
Le dossier OCS Inventory à été suprimmé.
Donc cette ligne de commande fonctionne comme un uninst.exe normal avec réaction de l'utilisateur :mouarf:
Ok mais il faut que l'utilisateur ne voit le moins de trucs possible et il n'est pas censé faire quelque chose.
Mais chez moi cela ne fonctionne pas, cela m'ouvre deux fenetres de commandes et lorsque je quitte cmd.exe il me demande si je veux fermer la deuxieme.
Et rien n'est désinstallé
retire le pause pour qu'on ne te demande plus de fermer la fenetre.
Chez moi ça a bien désinstaller donc je pense que chez toi aussi.
Essais, ouvre une console, place toi dans le dossier ou ce situe l'executable.
Ouvre via l'explotareur le même dossier.
tape comme commande:
uninst.exe /s
et vu verra que ton dossier ce videra tout seul et que la désinstallation aura fonctionée :-)
je sais pas si c'est moi ou autrechose mais cela ne désinstalle rien. Quand je le fait manuellement en exécutant le fichier exe, cela fonctionne mais avec mon code, rien.
Et lorsque j'exécute le fichier .bat, il reste la fenetre de c:\....\uninst.exe qui est toujours ouverte.
Lorsque je ne fesais pas avec la commande start, ça fonctionnais par contre.
Hum, comprend pas
si cela peut t'aider à comprendre pourquoi cela ne marche pas :
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 @echo off start "C:\Program Files\OCS Inventory Agent\uninst.exe /s /MIN /WAIT" IF EXIST c:\ocs-ng (RMDIR /S /Q c:\ocs-ng) IF EXIST C:\Program Files\OCS Inventory Agent ( DEL /S /Q C:\Program Files\OCS Inventory Agent\*.* RMDIR /S /Q C:\Program Files\OCS Inventory Agent ) exit
Bonjour,
Effectivement ta commande indique bien une erreur ^^
tu démarre uninst.exe avec comme parametre /S /MIN et /WAITCode:start "C:\Program Files\OCS Inventory Agent\uninst.exe /s /MIN /WAIT"
Alors que les deux dernier sont des paramètres pour start.
bonne journée :-)Code:start /M /W "C:\Program Files\OCS Inventory Agent\uninst.exe /s"