• Sábado 14 de Diciembre de 2024, 18:57

Autor Tema:  Problema de permisos guardando preferencias de usuario  (Leído 858 veces)

Jagermeister

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Problema de permisos guardando preferencias de usuario
« en: Sábado 12 de Junio de 2010, 13:21 »
0
Hola,

Estoy haciendo una aplicación con el Visual Studio 2008, en C++ con MFC.

El problema que tengo viene a la hora de guardar las preferencias del usuario. Utilizo un archivo .ini que se guarda en la misma carpeta que el ejecutable de la aplicación (por defecto en C:Archivos de programaMiPrograma). El archivo es muy simple, lo típico de:

[Seccion1]
Key11 = Valor11
Key12 = Valor12
etc...

Cuando ejecuto el programa desde el propio Visual Studio no tengo ningún problema, todo funciona bien. El problema es cuando instalo la aplicación en un ordenador, que no consigue guardar dicho fichero.

Según observé a base de pruebas, se debe a un problema de permisos. El usuario por defecto no tiene permisos para modificar ficheros en el directorio "C:Archivos de programa". Efectivamente, si ejecuto la aplicación como administrador, si que funciona.

Ahora el problema es que no puedo obligar a mis usuarios a que ejecuten la aplicación como administrador tan solo para ser capaz de guardar unas simples preferencias, del tipo de último fichero cargado, últimos valores introducido, etc...  Prácticamente todas las aplicaciones del mundo guardan las preferencias del usuario de una manera u otra, y ninguna pide permisos de administrador para ello.

¿Qué me aconsejáis para solucionar este problema? ¿Cómo hacéis vosotros para guardar unos sencillos campos como estos?


Un saludo, y gracias por adelantado

tyrell

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Problema de permisos guardando preferencias de usuario
« Respuesta #1 en: Domingo 13 de Junio de 2010, 14:54 »
0
Has probado a guardar el ini en Documents and Settings?. Creo que habia una carpeta alli comun a todos los usuarios y sino obtener el usuario de la sesion y guardarlo en su carpeta especifica. Hay seguro que debe tener permisos de escritura.