Contactez nous

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

Questions about WAPT Packaging / Requêtes et aides autour des paquets Wapt.
Règles du forum

* Questions can be asked in English or in French. If the thread is started in English, stick to English, if it is started in French, stick to French.
* Vous pouvez poser vos questions en Français ou en Anglais. Si un sujet est commencé en français, merci de répondre en français. Si un sujet est commencé en anglais, merci de répondre en anglais.
* Please prefix of the title of the thread to [SOLVED] if it is solved.
* Merci de préfixer le titre du thread par [RESOLU] si il est résolu.

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

Code : Tout sélectionner

installed_softwares(uninstallkey=u'{6D4839CB-28B4-4070-8CA7-612CA92CA3D0}')
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)' ?
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')