Existe-t-il un moyen avec ArcPy d'identifier la version d'un document cartographique (MXD). Je travaille sur une solution pour inventorier nos MXD et je voudrais savoir si un document est 8.1, 9.2, 10.0, etc.
J'utilise actuellement ArcGIS 10.0, mais s'il existe une mise à jour dans 10.1 qui n'existe pas dans 10.0, j'apprécierais également d'entendre cela.
Je vois qu'il y a une question précédente de Comment trouver la version d'ArcGIS par programme? , mais il fait référence à toutes les solutions ArcObjects (que je suppose que je pourrais appeler à partir de python , mais je préférerais ne pas le faire).
arcpy
arcgis-10.0
arcgis-10.1
mxd
RyanKDalton-OffTheGridMaps
la source
la source
Réponses:
Je sais que cette question remonte à quelques mois, mais je la poste au cas où cela aiderait les autres. J'ai développé ce kludge pour analyser les numéros de version à partir des documents MXD. Il lit essentiellement les 4000 premiers caractères d'un document MXD et recherche un numéro de version. J'ai testé avec les versions 9.2, 9.3, 10.0 et 10.1 de MXD.
Voici un exemple d'analyse d'un dossier pour les fichiers mxd et d'impression de la version et des noms
Ce qui renvoie ceci:
la source
La fonction ci-dessous est basée sur l'idée de Ryan, mais est un peu plus directe. Les documents cartographiques ArcGIS sont en fait des documents OLE, qui peuvent être analysés avec le
oletools
module (disponible sur pypi: https://pypi.python.org/pypi/oletools ). La fonction ouvre le fichier et lit la chaîne de version. Testé avec 9.0, 9.3, 10.1 et 10.3, mais devrait fonctionner avec n'importe quoi (pas sûr de 3.x ...).la source