2010-09-23 21 views

Respuesta

15

. Los ajustes de usuario .NET no se eliminan en la desinstalación. De hecho, la configuración de todas las versiones anteriores del software se conserva en el directorio Local Settings.

Cuando se instala la nueva versión, se crea una nueva versión de la configuración y se utilizan las configuraciones predeterminadas.

Para asegurarse de que su aplicación combinará nuevas configuraciones con la configuración anterior, debe llamar al método Settings.Default.Upgrade().

Así que la solución es eliminar manualmente la configuración en la desinstalación si no queremos conservarla. Dado que lo que necesitaba era preservar la configuración anterior, todo lo que hago ahora es la creación de un nuevo ajuste llamado UpgradeRequired con true tiene el valor por defecto, a continuación, añadir el código en el inicio de la aplicación:

if (Properties.Settings.Default.UpdateRequired) 
{ 
    Properties.Settings.Default.Upgrade(); 
    Properties.Settings.Default.UpdateRequired = false; 
} 
1

Usted podría escribir la configuración que desea guardar a cabo el registro o escribirlas como un archivo XML a una ubicación que no se verán afectados por la desinstalación.

+0

¿Me podría indicar artículo que explica cómo crear un proveedor de persistencia personalizado para ellos? –

+0

No tengo nada marcado, pero una búsqueda rápida en Google apareció en este http://www.java2s.com/Code/CSharp/Windows/Savevaluetoregistery.htm – Chuck

+1

¿Por qué esto ha sido downvoted sin una explicación? –

0

Si desea seguir usando la configuración del usuario, le sugiero que escriba una clase de instalador personalizada e implemente el método onUninstalling para ir al find the file y copiarlo en otra ubicación conocida por el método onInstall de su instalador personalizado. Para que la próxima vez que se ejecute el instalador pueda encontrar el archivo.

+1

¿Por qué esto ha sido degradado sin una explicación? –

0

No creo que realmente quiera conservar datos en la máquina de los usuarios después de una desinstalación. Dejar archivos es una práctica malvada, un gran no-no. Debe exponer una función en la aplicación para exportar esas configuraciones a la ubicación que desee y luego importarlas de nuevo después de volver a instalar la aplicación o sincronizar esas configuraciones en un servidor para que estén automáticamente disponibles luego de la reinstalación. , etc. En una desinstalación, no debes dejar ningún rastro.

+0

+1 mucho agreo! –

+1

Lea mi pregunta nuevamente: "Quiero poder elegir al usuario en el instalador". Quiero dar la elección. –

Cuestiones relacionadas