read application c# windows

application - donde valor de ajuste de propiedad almacenado en la aplicación de Windows c#



properties.settings c# (4)

Pensé que debería ser un archivo de configuración, pero no puedo encontrarlo. Gracias


¿Te refieres al archivo .settings en tu aplicación? Cuando agrega valores a ese archivo, se crea un archivo app.config para usted. Debería verlo en su explorador de soluciones.


Si está hablando de configuraciones de .Net, entonces normalmente estarán en un archivo .config (xml) en el mismo directorio que la aplicación. Sin embargo, cuando los guarda, una copia local se guarda en una carpeta grabable por el usuario (normalmente C: / Users / username / AppData / Local en Vista). En XP, mira en la carpeta Documents and Settings.

La aplicación .Net usa este archivo con preferencia al ''predeterminado'' en el directorio de la aplicación.

Espero que esto ayude.


Toda la ubicación del archivo de configuración puede ser un poco resbaladiza. Dependiendo de si es o no una configuración de "usuario" o una configuración de "aplicación", entrará en un archivo diferente. Algunas configuraciones pueden incluso venir de su configuración de "máquina" (como en el caso de ASP.NET). En lugar de adivinar dónde está todo, me resulta mucho más útil preguntarle a .NET dónde está buscando estos archivos . Aproximadamente:

//Machine Configuration Path string path1 = ConfigurationManager.OpenMachineConfiguration().FilePath; //Application Configuration Path string path2 = ConfigurationManager.OpenExeConfiguration( ConfigurationUserLevel.None).FilePath; //User Configuration Path string path3 = ConfigurationManager.OpenExeConfiguration( ConfigurationUserLevel.PerUserRoamingAndLocal).FilePath;

App.Config

Esto es lo que se agrega a tu proyecto. El proceso de compilación lo denominará [myproject] .exe.config . Esto contiene la configuración de la aplicación (principalmente) de solo lectura y los valores predeterminados del nivel de la aplicación para las configuraciones específicas del usuario. Las configuraciones de nivel de aplicación son difíciles de cambiar programáticamente sus valores. Las propiedades de configuración del nivel de aplicación solo tendrán definido "get". La intención es: si su configuración es para todos los usuarios de la aplicación, entonces una edición manual (o el instalador) debería configurarlos. Si cambia por usuario, conviértalo en una configuración por usuario.

Configuración predeterminada binaria

Su aplicación se ejecutará sin su archivo [myproject] .exe.config. Para hacer esto, el binario tiene su propia versión del archivo "almacenado". Esto es útil de alguna manera, pero puede ser confuso. Si tiene un archivo .config en el lugar incorrecto o con un nombre incorrecto, .NET revierte a los "valores predeterminados binarios". Puede causar la apariencia de no poder afectar la configuración al cambiar el archivo de configuración. Usa el método de arriba para saber a dónde va realmente .config, o enfrenta la ira de la configuración predeterminada binaria.

User.Config

Esto se genera la primera vez que "guarda" su objeto Default.Settings con una configuración "por usuario". Este archivo se guarda en la ruta del perfil del usuario en una ubicación basada en el nombre, la versión, el sistema operativo y otras magias oscuras de .NET de su proyecto. Las propiedades para estas configuraciones son legibles / grabables. Están diseñados para configurarse fácilmente y luego guardarse con una sola llamada.

Juntándolo

¿A dónde va mi configuración? La respuesta es que potencialmente muchos archivos se unen para obtener el "conjunto activo" de configuraciones. Las configuraciones de App.config y user.config son los bloques básicos, pero hay configuraciones de máquina.config, y luego hay configuraciones de ensamblaje de dependencia que pueden complicar aún más las cosas ... pero ese es otro tema por completo.

La verdad real de los archivos de configuración se extiende a través de muchos casos y detalles desagradables . Sin embargo, con un poco de conocimiento sobre cómo se unen, es un sistema bastante útil. Especialmente si te das cuenta de que puedes enlazar datos a estas configuraciones;)