14 votos

¿El complemento de ArcMap con app.settings no reconoce los cambios en app.config?

He desarrollado un complemento de ArcMap que requiere un archivo de configuración. Después de pasar un tiempo tratando de leer los valores de configuración de un solo archivo App.Config (y siempre obteniendo nulo), creo que el complemento no puede leer los valores desde aquí, ya que es una biblioteca de clases, y busca el archivo de configuración de la aplicación que llama (ArcMap) cuando pido el valor de una clave (de ahí el nulo).

Para solucionar esto, utilicé un archivo App.Settings, el cual la aplicación puede leer correctamente. Al crear esto, también se introdujo un archivo App.Config en el entorno y Visual Studio parece mantener ambos archivos sincronizados durante el desarrollo.

Ahora que el complemento se está implementando, necesito poder cambiar los valores de configuración (por ejemplo, la ubicación del archivo de registro). He intentado abrir / extraer el archivo .esriaddin y actualizar el archivo App.Config allí, pero el complemento retiene los mismos valores de configuración que tenía al compilarse. Sé que los nuevos valores de App.Config se están persistiendo en el archivo .esriaddin porque puedo verlos nuevamente después de cerrar el archivo.

¿Alguien conoce una forma confiable de configurar un complemento y permitir que esta configuración sea actualizable una vez implementada? Cualquier sugerencia es bienvenida, ya que parece ridículo que necesite un archivo de configuración personalizado para esto.

Los valores de App.Settings están a nivel de aplicación, y actualmente tanto App.Settings como App.Config tienen una acción de compilación: ninguno / no copiar.

0voto

ecathell Puntos 128

Puedes intentar modificar la copia del archivo de configuración ubicado en la caché de ensamblado de complementos. Creo que el esriaddin solo se expande una vez por ArcGIS. Entonces, es posible que las modificaciones posteriores no se utilicen (aunque debería notar que el archivo esriaddin es más reciente que su caché).

Vista/7: C:\Users\\AppData\Local\ESRI\Desktop10.0\AssemblyCache

XP: C:\Documents and Settings\\Local Settings\Application Data\ESRI\Desktop10.0\AssemblyCache

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X