Seite 1 von 1

[GELÖST] Verwaltung eines doppelten Softwareeintrags in der Registrierung

Veröffentlicht: 5. August 2020 - 11:09 Uhr
von Patrice_minagri
Guten Morgen,

Ich erstelle gerade ein Paket und verwende je nachdem, ob die Software installiert ist oder nicht, folgenden Code:

Code: Alle auswählen

for soft in installed_softwares('SIGAL'):
	if Version(soft['version']) < Version('1.15.1'):
Der Code funktioniert nicht, weil beim Anzeigen der Funktion installierte Software (Software) - siehe unten - es gibt zwei Softwareeinträge in der Registrierung.

Das Anwesen 'Version' Es ist auf der einen Seite leer und auf der anderen Seite gefüllt. Aber anscheinend ist das die Eigenschaft. 'Version' eine leere Zeichenkette, die bei der Ausführung des Befehls verwendet wird if Version(soft['version']) < Version('1.15.1'):

Gibt es eine Möglichkeit, den zweiten Eingang zu verwenden, der Folgendes enthält? 'Version' Der Wert 1.15.1 wurde korrekt eingegeben?

Vielen Dank für Ihre Hilfe.

Code: Alle auswählen

[{'install_date': '',
  'install_location': '',
  'key': u'SIGAL',
  'name': u'SIGAL 1.15.1',
  'publisher': '',
  'system_component': 0,
  'uninstall_string': '',
  'version': '',
  'win64': False},
 {'install_date': u'20200803',
  'install_location': u'C:\\Program Files (x86)\\Minagri\\Sigal\\',
  'key': u'SIGAL_is1',
  'name': u'SIGAL',
  'publisher': u"Minist\xe8re de l'agriculture et de la p\xe8che",
  'system_component': 0,
  'uninstall_string': u'"C:\\Program Files (x86)\\Minagri\\Sigal\\unins000.exe"',
  'version': u'1.15.1',
  'win64': False}]

Betreff: Verwaltung eines doppelten Softwareeintrags in der Registrierung

Veröffentlicht: 7. August 2020 - 10:19 Uhr
von Sfonteneau
Hallo Patrice

Sie haben zwei Deinstallationsschlüssel: „SIGAL_is1“ und „SIGAL“.

Also, zwei Softwareprogramme.

In Fällen wie diesen:

Code: Alle auswählen

for soft in installed_softwares(uninstallkey='SIGAL_is1'):
	if Version(soft['version']) < Version('1.15.1'):