Fichier de commandes pour installer de multiples programmes en silence
Je veux créer un fichier batch qui va installer de multiples programmes de façon séquentielle.
Je suis en mesure d'installer les logiciels de façon séquentielle à l'aide de code suivant dans le fichier de commandes:
@echo off
"Path/software1.exe"
"Path/software2.exe"
"Path/software3.exe"
"Path/software4.exe"
OU
@echo off
start /wait "Path/software1.exe"
start /wait "Path/software2.exe"
start /wait "Path/software3.exe"
start /wait "Path/software4.exe"
Mais ici avant d'installer tout logiciel que je veux vérifier si il est déjà installé ou pas.
J'ai essayé de faire la liste des logiciels installés à l'aide des deux manières suivantes:
wmic product get name
OU
reg export HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall temp.txt /y
Mais alors je serais à la recherche de chaînes de caractères qui n'est pas envisageable. Donc je voudrais savoir si leur est de toute commande pour vérifier si une application est installée ou non à l'aide d'un fichier batch?
Merci à l'avance.
OriginalL'auteur Gaurang | 2015-04-27
Vous devez vous connecter pour publier un commentaire.
Il n'y a pas de manière formelle pour vérifier si une application est installée. Les installateurs, pour la plupart, il suffit de copier les fichiers, définir des clés de registre, et d'ajouter des raccourcis du menu démarrer, sans vous inscrire quoi que ce soit avec Windows de dire que je suis installé.
Un moyen générique de voir si une application est installée, est de voir si il a une entrée dans Ajout/suppression de Programmes applet du Panneau de Contrôle. Chaque entrée de l'ARP est trouvé dans la base de registre :
Software\Microsoft\Windows\CurrentVersion\Uninstall
(HKEY_CURERNT_USER et HKEY_LOCAL_MACHINE)
Si c'est MSI installateur, alors vous pouvez probablement écrire un peu de code pour voir si la Fonctionnalité ID ou ID de Composant est installé avec le MSI API. Je ne sais pas comment appeler ces fonctions dans un fichier BAT sans compilation de certains programmes d'aide.
Donc, la façon dont vous l'avez suggéré, dose n'est pas une garantie de succès pour moi.
c'est mon point de vue pour ma première déclaration. Il ne peut vraiment pas être fait pour tous les programmes de la même manière. Vous devez écrire du code qui ressemble pour le chemin d'installation, clés de registre ou de toutes les preuves pour confirmer que le programme est installé. Et il sera différent pour chaque application qui est installé. J'ai proposé l'ARP de registre comme un moyen qui travaillent la plupart du temps pour la plupart des programmes.
Aussi, je n'ai jamais "garantie de succès" à tout le monde avec mes réponses. Seulement, vous pouvez garantir votre succès.
OriginalL'auteur selbie
vous suffit de prendre des conditions
s'il n'existe pas "C:\Program Files\software1"
"Path/software1.exe"
s'il n'existe pas "C:\Program Files\2"
"Path/software2.exe"
s'il n'existe pas "C:\Program Files\software3"
"Path/software3.exe"
s'il n'existe pas "C:\Program Files\software4"
"Path/software4.exe"
OriginalL'auteur Sourav Ghadai
Cela peut aider (que j'ai utiliser pour vous aider à afficher les logiciels installés à la suite d'un lot complet) est de mettre "appwiz.le cpl" sans guillemets à la fin de votre script.
exemple:
OriginalL'auteur JB_techwiz