Suite

Vérifier si le service pack est installé à l'aide d'ArcPy ?

Vérifier si le service pack est installé à l'aide d'ArcPy ?


Existe-t-il un moyen de vérifier avec arcpy si un service pack ArcGIS for Desktop spécifique est installé sur la machine locale ?

Plus précisément, mon script ne peut fonctionner qu'avec ArcGIS 10.1 avec SP1 ou des versions supérieures. Dans le cas des versions antérieures, je souhaite afficher un message à l'attention de l'utilisateur et arrêter le script avant qu'il ne se bloque.


Essayer

arcpy.GetInstallInfo()

Vous obtiendrez un dictionnaire de clés et devriez être capable d'écrire une logique à ce sujet

{'SourceDir': u'C:Userskevi5105DocumentsArcGIS 10.3DesktopSetupFiles', 'InstallDate': u'5/5/2015', 'InstallDir': u'c:program files ( x86)arcgisdesktop10.3', 'ProductName' : u'Desktop', 'BuildNumber' : u'4322', 'InstallType' : u'N/A', 'Version' : u'10.3', ' SPNumber' : u'N/A', 'Installer' : u'kevin5', 'SPBuild' : u'N/A', 'InstallTime' : u'10:19:54'}

Donc, la logique pourrait être comme :

try : ver = float(arcpy.GetInstallInfo()['Version']) sauf : ver = 10.0 try : sp = float(arcpy.GetInstallInfo()['SPNumber']) sauf : sp = 0 if ver >= 10.1 et sp > 1 : #faire quelque chose

(Je suppose que le SP # à 10.1… vous devrez peut-être le corriger)