Nous avons récemment changé nos progiciels Windows de RPM (cygwin) à MSI (wix). Avoir un emballage natif est un changement bienvenu et nous avons l'intention de s'en tenir à cela. Cependant, MSI se sent trop compliqué pour ce qu'il fait et ne semble pas fournir certaines capacités de base. Mais je me trompe probablement. Y at-il un moyen de lister tous les MSI installés à partir de la ligne de commande? Comment puis-je lister MSI installé à partir de la ligne de commande?
Répondre
Mabybe this est un bon point de départ pour vous par exemple VB Script de MSDN:
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & _
"{impersonationLevel=impersonate}!\\" & _
strComputer & _
"\root\cimv2")
Set colSoftware = objWMIService.ExecQuery _
("SELECT * FROM Win32_Product")
If colSoftware.Count > 0 Then
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.CreateTextFile(_
"c:\SoftwareList.txt", True)
For Each objSoftware in colSoftware
objTextFile.WriteLine objSoftware.Caption & vbtab & _
objSoftware.Version
Next
objTextFile.Close
Else
WScript.Echo "Cannot retrieve software from this computer."
End If
Je ne sais pas si c'est ce dont vous avez besoin, mais vous pouvez interroger la liste de désinstallation de la ligne de commande avec :
REG QUERY HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall
Excellent: Cependant, il y a une petite faute de frappe. Il devrait lire: 'HKLM' pas 'HLKM' (HKEY_LOCAL_MACHINE). – Martin
Vous pouvez utiliser PowerShell et Windows Management Instrumentation (WMI). Voici une seule ligne:
Get-WmiObject -Class win32_product
Voici une aide pour le Get-WmiObject
cmdlet:
http://technet.microsoft.com/en-us/library/dd315295.aspx
Voici un échantillon où l'on sélectionne le premier programme installé et le format comme une table:
PS C:\Users\knut> Get-WmiObject -Class win32_product |
>> select -First 1 | ft Name, Version, Vendor -AutoSize
>>
Name Version Vendor
---- ------- ------
AWS SDK for .NET 1.2.0200 Amazon Web Services Developer Relations
Voir la réponse similaire ici: http://stackoverflow.com/questions/29937568/how-can-i-find-the-product-guid-of-an-installed-msi-setup/29937569 –
- 1. Comment ajouter/mettre à jour une propriété dans un MSI à partir de la ligne de commande?
- 2. SWT & JFace à partir de la ligne de commande
- 3. compiler java à partir de la ligne de commande
- 4. Publier sur RSS à partir de la ligne de commande
- 5. Publier ClickOnce à partir de la ligne de commande
- 6. Résolution automatique Perforce à partir de la ligne de commande?
- 7. cvs checkout à partir de la ligne de commande Windows
- 8. Comment mettre à jour la référence Web à partir de la ligne de commande VS 2008?
- 9. Comment exécuter un script PHP à partir de la ligne de commande avec MAMP?
- 10. Les propriétés de condition WiX transmises à partir de la ligne de commande ne fonctionnent pas?
- 11. Vérification de l'installation de .NET à partir de la ligne de commande
- 12. Sortie vers la ligne de commande si elle est démarrée à partir de la ligne de commande
- 13. Comment ajouter des en-têtes HTTP personnalisés à IIS à partir de la ligne de commande
- 14. Inetmgr (iis6) à partir de la boîte de dialogue d'exécution et de la ligne de commande
- 15. Comment puis-je obtenir un handle de fichier à partir de la ligne de commande?
- 16. MSBuild - Obtention de la cible à partir de la ligne de commande
- 17. Comment modifier le titre de la fenêtre d'invite de commande (console) à partir de l'application Java en ligne de commande?
- 18. oracle ligne de commande de la question
- 19. Mise à jour vers la dernière version à partir de la ligne de commande
- 20. Nécessité d'exécuter la boîte de dialogue de sécurité Windows à partir de la ligne de commande
- 21. WIX: Comment sélectionner des fonctionnalités à partir de la ligne de commande
- 22. Comment contrôler IIS 5.1 à partir de la ligne de commande?
- 23. Comment ouvrir le concepteur SharePoint à partir de la ligne de commande avec un site SharePoint
- 24. Comment lancer les exécutables XCode à partir de la ligne de commande
- 25. Comment obtenir les arguments de la ligne de commande IE8 à partir du module complémentaire
- 26. Comment puis-je écrire sur le port parallèle à partir de la ligne de commande Windows?
- 27. Comment compiler un simple programme boost à partir de la ligne de commande dans unix
- 28. Comment puis-je déployer une application sur mon iPhone à partir de la ligne de commande?
- 29. Comment déployez-vous une application iPhone sur le simulateur à partir de la ligne de commande?
- 30. Comment puis-je tout construire avec MSBuild à partir de la ligne de commande?
J'aurais préféré quelque chose à utiliser depuis la ligne de commande, mais cela fera l'affaire. Merci. – bltxd
Allez-y et utilisez le script depuis la ligne de commande, puis. Utilisez cscript.exe pour l'exécuter, et ne le publiez pas dans un fichier mais dans stdout (comme ceci: WScript.Echo objSoftware.Caption & vbtab & objSoftware.Version). Tous les trucs FSO ne sont plus nécessaires. – Tomalak