Page 1 sur 1

[RESOLU] Problème sur plusieurs entrées 'Key' relative à un logiciel

Publié : 14 janv. 2019 - 14:57
par Patrice_minagri
Bonjour,

Lorsque j'exécute la ligne installed_softwares('BIG-IP Edge Client'), il me ressort le résultat suivant :

Code : Tout sélectionner

[{'install_date': '',
  'install_location': u'C:\\Windows\\Downloaded Program Files',
  'key': u'F5 Networks Client Components',
  'name': u'BIG-IP Edge Client Components (All Users)',
  'publisher': u'F5 Networks, Inc.',
  'system_component': 0,
  'uninstall_string': u'"C:\\ProgramData\\F5 Networks\\f5unistall.exe" /uninstall',
  'version': u'71.2018.0808.2011'},
 {'install_date': u'20190114',
  'install_location': u'',
  'key': u'{6D4839CB-28B4-4070-8CA7-612CA92CA3D0}',
  'name': u'BIG-IP Edge Client',
  'publisher': u'F5 Networks, Inc.',
  'system_component': 0,
  'uninstall_string': u'MsiExec.exe /X{6D4839CB-28B4-4070-8CA7-612CA92CA3D0}',
  'version': u'71.2018.0808.2011'}]
En fait, c'est assez normal car le nom 'BIG-IP Edge Client' est mentionné deux fois dans la liste des logiciels installés sur Windows, soit :
- 'BIG-IP Edge Client'
- 'BIG-IP Edge Client Components (All Users)'

Lorsque j'exécute le code suivant :

Code : Tout sélectionner

for soft in installed_softwares('BIG-IP Edge Client'):
           key_uninst = soft['key']
Le résultat est : F5 Networks Client Components

Moi ce qui m'intéresses de récupérer est la deuxième référence key, c'est à dire : {6D4839CB-28B4-4070-8CA7-612CA92CA3D0}

Comment faire pour la récupérer ? Y a t-il la possilité de faire en sorte que la recherche se fasse strictement sur la mention 'BIG-IP Edge Client' ?

Merci.

Patrice

Re: Problème sur plusieurs entrées 'Key' relative à un logiciel

Publié : 14 janv. 2019 - 15:05
par htouvet

Code : Tout sélectionner

installed_softwares(uninstallkey=u'{6D4839CB-28B4-4070-8CA7-612CA92CA3D0}')

Re: Problème sur plusieurs entrées 'Key' relative à un logiciel

Publié : 14 janv. 2019 - 15:13
par Patrice_minagri
Et en imaginant que la clé n'est pas connue et que l'on veuille se baser sur la variable de la base de registre.

Parce que dans mon cas le code installed_softwares('BIG-IP Edge Client') renverra toujours deux résultats ? Est-ce juste ?

Il n'y a rien qui puisse faire rechercher strictement la mention 'BIG-IP Edge Client' en évitant alors de ramener les propriétés de 'BIG-IP Edge Client Components (All Users)' ?

Re: Problème sur plusieurs entrées 'Key' relative à un logiciel

Publié : 14 janv. 2019 - 16:10
par htouvet
là il y a un petit bug dans la fonction... pour contourner, uninstallkey=''

Code : Tout sélectionner

installed_softwares(uninstallkey='',name=r'BIG-IP Edge Client')