¿Microsoft tiene un documento de mejores prácticas en relación con el almacenamiento de datos de aplicaciones y los datos actuales de los usuarios sobre diferentes plataformas de Windows?

StackOverflow https://stackoverflow.com/questions/1507923

  •  19-09-2019
  •  | 
  •  

Pregunta

Al crear una aplicación que se dirige a muchas versiones de Windows lo que es la mejor práctica para determinar dónde se deben almacenar los datos específicos de la aplicación. Específicamente:

  • Aplicación de datos específicos (por ejemplo, aplicación de datos config)
  • Datos específicos de usuario / Configuración

Sé que en Windows Vista, por ejemplo, existen variables de entorno, como% APPDATA%, que se podrían utilizar, pero ¿qué pasa con Windows 7, Windows XP, Windows 98.

Mi pregunta principal es, qué Microsoft tiene una mejor doc prácticas para esto, delineando las ubicaciones del sistema de archivos para los diferentes tipos de datos (app vs. usuario) y las implicaciones de seguridad que deben tenerse en cuenta al leer / escribir a estos lugares?

También estoy interesado en cómo esto se refiere no sólo a las aplicaciones .NET (donde ApplicationSettingsBase se puede utilizar), sino también en C no administrado / aplicaciones C ++.

Gracias a Pax y Remo tanto de las grandes respuestas. He encontrado este artículo también (específico para XP):

Cómo escribir una aplicación de Windows XP que almacena los datos del usuario y de la aplicación en la ubicación correcta utilizando Visual C ++

¿Fue útil?

Solución

Hay una buena descripción aquí de los diversos valores CSIDL y las carpetas que se refieren a (incluyendo una descripción que debe decirle lo que es de esperar que necesita saber).

También contiene enlaces a las funciones que debe utilizar para recuperar estas rutas de carpeta especial.

Tenga en cuenta que, a partir de Vista, el método ha cambiado un poco. Ahora utiliza KNOWNFOLDERID en lugar de CSIDL y las funciones han cambiado también. Ver aquí .

Puede seguir utilizando las funciones de mayor edad (por el momento), ya que creo que son ahora tan sólo las envolturas alrededor de las nuevas. En algún momento en el futuro, eso puede cambiar.

Otros consejos

Estos se describen generalmente en el Programa del logotipo de Windows Software (enlace roto) . El enlace es el documento de Windows 7 requisitos del logotipo, pero existe documentos similares para XP, Windows 2003, Windows Vista y Windows 2008. En los Requisitos Técnicos sección encontrará algunos de la información que está buscando:

  

Todos los datos de aplicación que debe estar   compartida entre los usuarios en el equipo   debe ser almacenada dentro de ProgramData

     

Todos los datos de aplicación exclusiva a una   de usuario específico y no para ser compartido   con otros usuarios de la necesidad de ordenador   ser almacenados en   Users\<username>\AppData

     

En las instalaciones “por equipo”, el usuario   los datos deben ser escritos en la primera carrera y   no durante la instalación. Esto es   porque no hay ningún usuario correcto   ubicación para almacenar los datos en el momento de   la instalación.

EDIT:

Windows 10 usuarios, buscan la Los requisitos de certificación para el escritorio de Windows Aplicaciones (Sección 10)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top