Gestion des programmes installés

A utiliser pour trouver le code produit pour faciliter la désinstallation d'un programme avec la commande msiexec.

msiexec /x {code produit} /quiet /norestart

Ces quelques lignes de code permettent de trouver le code produit correspondant à un nom tel qu'affiché dans "Programmes et fonctionnalités". Le code retourné inclut les accolades.

Func _RegSearch ($s_key , $fReg, $fValue)
	Local $i=1
	Do
		$var = RegEnumKey($s_key, $i)
		$path = $s_key & "\" & $var
		$varRead = RegRead($path , $fReg)
 
		if $varRead = $fValue Then
			Return $path
		Endif
 
		$i = $i + 1
	Until $var = ""
 
	Return "0"
EndFunc
 
Func _GetProductUninstallKey($DisplayName)
	$key = _RegSearch("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall", "DisplayName", $DisplayName)
	If (@OSArch = "X64") And ($key = "0") Then
		$key = _RegSearch("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall", "DisplayName", $DisplayName)<br />
	EndIf
	Return $key
EndFunc
 
Func _GetProductCode($DisplayName)
	$key = _GetProductUninstallKey($DisplayName)
	if $key = "0" Then
		return ""
	Else
		$array = StringSplit($key, "\")
		Return $array[$array[0]]
	EndIf
EndFunc

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *