lunes, noviembre 29, 2004

Recomendación al usar funcion GetFileopen o GetFileSave

Recientemente al estar trabajando una aplicación en mi oficina, me tope con un problema al utilizar la función GetFileOpen, el asunto es el siguiente: cada vez que ustedes utilizen alguna de estas funciones, su aplicación tomará luego de ejecutada la función, el path en donde seleccionaron el archivo para abrir o guardar, esto quiere decir que si su aplicación esta en el directorio c:\app, y la función Getfileopen o Getfilesave se quedó en el directorio c:\misdocumentos\archivos, el nuevo path de su aplicación será "c:\misdocumentos\archivos", el problema de esto es si tienen algun archivo como una imagen, o un inifile, que lo trabajen sobre el directorio de su aplicación, en este caso simplemente no encontrará estos archivos.

Para solucionar este problema existe la alternativa de guardar el directorio actual de la aplicación para luego reestablecerlo, y la otra claro seria usar un archivo de recursos PBR.

Les doy el ejemplo de la primera alternativa

String ls_pathActual

ls_pathActual = GetCurrentDirectory()

// llamamos a la funcion Getfile open
GetFileOpen (....)

// volvemos a setear el path
setCurrentDirectory (ls_pathActual)

esto evitara el problema.

Espero que si alguno encuentra este error, o conoce a alguien que lo tiene, les pueda brindar esta simple, pero funcional solucion.

Saludos Cordiales

Ing. Carlos A. Lone
Guatemala

2 Comments:

At 28 de octubre de 2005 01:32, Anonymous Anónimo said...

Muy correcto lo que dices, simplemente indicar que usar .pbr es casi un "must to":
a) El usuario no puede acceder a la carpeta de recursos.
b) Se gana control sobre Windows que, en determinados casos (abres otra aplicación, seleccionas un directorio, etc.)puede hacer perder el path a la aplicación.

Un saludo,
PBD

 
At 2 de febrero de 2007 06:33, Anonymous Anónimo said...

Aprovecho para consultar:
Al usar GetFileOpen, simpre muestra las carpetas con vista de lista. Como puedo hacer para que los archivos se vean como vistas en miniatura?, ya que el usuario elije archivos de imagenes.

 

Publicar un comentario

<< Home