¿Se publican las especificaciones de formato de datos ArcGIS * .lyr y * .mxd?

15

¿Se publican los formatos binarios de los archivos * .lyr y * .mxd?

Scott Wisniewski
fuente
quizás haga estas dos partes (o pregunte otra): ¿Hay algún proyecto trabajando para aplicar ingeniería inversa a los formatos?
matt wilkie

Respuestas:

26

No se publican, y es probable que no se deba aplicar ingeniería inversa y esperar cookies gratuitas en ESRI UC, pero son básicamente archivos de formato de documento compuesto OLE2, como documentos de MS Word y Excel. Con una buena herramienta para abrirlos (por ejemplo, http://www.gemboxsoftware.com/CompoundFile.htm ), puede acceder a la parte de piratería bastante rápido. Con un buen ojo y un poco de conocimiento del modelo de objetos ArcObjects, leerá datos interesantes en poco tiempo. Incluso he escuchado rumores de personas que crean archivos LYR desde cero usando código que no es ESRI.

Sebastian bueno
fuente
1
Supongo que podría hacer esto con un gran esfuerzo, pero aún así, consideraría que dicha implementación es muy frágil por las razones mencionadas en mi respuesta.
Petr Krebs
@petr una implementación de ingeniería inversa es estable en correlación directa con las necesidades de los proveedores para mantener la compatibilidad con versiones anteriores.
Matt Wilkie
Buen punto Matt. Si bien las extensiones personalizadas lo obstaculizarán con una implementación verdaderamente completa, generalmente descubrir fuentes de datos y opciones de representación simples es suficiente para hacer lo que desea hacer. El formato no cambia rápidamente por las razones de Matt.
Sebastian Good
17

La respuesta es no.

JasonBirch
fuente
44
Hubiera sido más corto, pero tiene que poner al menos 15 caracteres :)
JasonBirch
3

No lo es y supongo que por naturaleza no puede serlo, ya que un .mxd está compuesto esencialmente por ArcObjects (barras de herramientas, mapas, capas, renderizadores, símbolos, etc.) serializados a través del mecanismo estándar IPersistStream.

Con el ecosistema abierto de ArcObjects, donde un mapa puede contener muchos componentes personalizados, cada uno con su propia serialización, sin mencionar los cambios en los datos serializados entre versiones de componentes, desafortunadamente no puedo imaginar cómo esto sería posible.

Petr Krebs
fuente
-3

si cambia la extensión .lyr a .zip o .7z y la abre con 7Zip (probado con la versión 9.20), puede encontrar 3 archivos: - Layer - LayerLargeImage (solo agregue .bmp para verlo) - LayerSmallImage (solo agregue. bmp para verlo)

No tengo idea de cómo abrir el archivo "Capa", pero un paso está hecho.

ZarcoDarkson
fuente