Overblog Tous les blogs Top blogs Technologie & Science Tous les blogs Technologie & Science
Editer l'article Suivre ce blog Administration + Créer mon blog
MENU

Msiprop

Publié le par damcuvelier

# Chemin vers le fichier MSI
$cheminFichierMSI = "C:\Chemin\vers\votre\fichier.msi"
 
# Obtenir les propriétés du fichier MSI
$proprietesMSI = Get-ItemProperty -LiteralPath $cheminFichierMSI
 
# Afficher les propriétés
$proprietesMSI.PSObject.Properties | ForEach-Object {
    Write-Host "$($_.Name): $($_.Value)"
}
# ////////////\\\\\\\\\\\\\
# Chemin vers le fichier MSI
$cheminFichierMSI = "C:\Chemin\vers\votre\fichier.msi"
 
# Charger l'objet MSI
$msiObject = New-Object -ComObject WindowsInstaller.Installer
$database = $msiObject.GetType().InvokeMember('OpenDatabase', 'InvokeMethod', $null, $msiObject, @($cheminFichierMSI, 0))
 
# Obtenir la version
$queryVersion = "SELECT Value FROM Property WHERE Property = 'ProductVersion'"
$version = $database.GetType().InvokeMember('OpenView', 'InvokeMethod', $null, $database, ($queryVersion))
$version.Execute()
$versionValue = $version.Fetch().StringData(1)
 
# Obtenir le fournisseur
$queryVendor = "SELECT Value FROM Property WHERE Property = 'Manufacturer'"
$vendor = $database.GetType().InvokeMember('OpenView', 'InvokeMethod', $null, $database, ($queryVendor))
$vendor.Execute()
$vendorValue = $vendor.Fetch().StringData(1)
 
# Afficher les résultats
Write-Host "Version: $versionValue"
Write-Host "Fournisseur: $vendorValue"
 
# Fermer la base de données MSI
$database.GetType().InvokeMember('Commit', 'InvokeMethod', $null, $database, $null)
$msiObject = $null
 

Commenter cet article