FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Directorio errado al trabajar con componente TSaveDialog
Buenos días a todos, desde hace algún tiempo empeze a tener problemas con un componente TsaveDialog, el error solo me esta ocurriendo con mis usuarios con equipo windows 7. Estoy trabajando en Delphi7
La aplicacion que invoca el componente lo que hace antes de llamar al execute del SaveDialog es declararle en que carpeta por defecto guarda los archivos (ejemplo c:trabajosx\archivos) pero el tema esta que esta aplicacion funciona en dos ambientes distintos en la cual el usuario puede trabajar en una misma maquina, por lo tanto dependediendo del ambiente donde este trabajando los archivos se guardarian en una ruta u otra. El tema en cuestion es que si un usuario empieza a trabajar en un ambiente "X" para guardar los archivos en la ruta "X", luego al salirse de la aplicacion para levantar el ambiente "Y" y guardar los archivos en "Y", windows realmente le muestra por defecto la ruta "X" donde guardo los archivos, a pesar de que antes de invocarlo le pase la variable con la nueva ruta donde tiene que guardar. No se que clase de error me origine esto....Lo que tambien e logrado detectar es que hay veces que cuando se cambian de ambiente nisiquiera al guardar los archivos les dice la ruta anterior sino que les muestra "Mis Documentos"; logre entender que Windows muestra "Mis Documentos" por defecto cuando no logra resolver la ruta del initialDir del componente TSaveDialog. Atento a sus comentarios y dudas. Saludos |
#2
|
||||
|
||||
Juanfish,
Cita:
Revisa este código: El código anterior en Delphi 7 utiliza el componente TSaveDialog, funcionando según lo esperado en Windows 7 Professional x32 y x64. Pregunto: 1- ¿Puedes explicar con más detalle el tema relacionado a los ambientes?. 2- ¿Hay algo en el cambio de ambiente que pueda afectar la selección del directorio asignado en el componente TSaveDialog?. Espero sea útil Nelson. Última edición por nlsgarcia fecha: 19-09-2013 a las 21:38:59. |
#3
|
|||
|
|||
Gracias nslgarcia por tu comentario, cuando me refiero a los ambientes quiero decir que son dos instacias de base de datos separadas, la misma aplicacion dependiendo del registro que se corra levanta una instancia o la otra; por ser asi tengo parametrizado en base de datos una columna de una tabla donde se le coloca en donde va a guardar los archivos para la instancia que se este trabajando.
El problema no esta ahi, ni en declararle al SaveDialog el initialdir, fileExtension o filename; el detalle esta en el execute que no levanta la ruta que se le esta poniendo por defecto y solo me ocurre en windows 7 (tengo usuarios con equipos windows xp y 7). Momentaneamente lo que hice para resolver es que a stringlist.savetofile() no le paso el Savedialog.filename sino la propia variable de la base de dato que yo le asigno al savedialog.initialdir. En conclusion el savedialog esta de adorno porque siempre se va a guardar segun la ruta que tenga parametrizada en la tabla de mi DB. De todas formas muchisimas gracias por el aporte, como tal no puedo hacer pruebas bien sobre la aplicacion porque no tengo delphi7 certificado en windows 7 asi que solo compilo en xp y pruebo en otra maquina (te podras imaginar lo fastidioso del asunto). Igual es un tema que tengo que revisar para ver que es lo que ocurre en realidad. Saludos. |
#4
|
||||
|
||||
Juanfish,
Cita:
Cita:
1- Compile el código del Msg #2 en Delphi 7 sobre Windows XP Professional x32 y funciono correctamente en Windows 7 Professional x32, x64 y Windows XP Professional x32. 2- Compile el código del Msg #2 en Delphi 7 sobre Windows 7 Professional x32 y funciono correctamente en Windows 7 Professional x32, x64 y Windows XP Professional x32. 3- Compile el código del Msg #2 en Delphi 7 sobre Windows 7 Professional x64 y funciono correctamente en Windows 7 Professional x32, x64 y Windows XP Professional x32. Pregunto: ¿El código del Msg #2, funciona en la máquina en cuestión con Windows 7 según lo esperado o también falla?. Espero sea útil Nelson. Última edición por nlsgarcia fecha: 21-09-2013 a las 00:41:41. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
evitar conflicto entre TSaveDialog y LoadFromFile | lmpadron | C++ Builder | 0 | 25-01-2013 19:15:33 |
Saber cómo se ha salido de un TSaveDialog | adebonis | Varios | 2 | 24-10-2005 14:15:45 |
Topendialog and Tsavedialog!!! | kage_01 | Conexión con bases de datos | 0 | 19-10-2005 17:22:53 |
Que componente uso para trabajar EXEL? | marceloalegre | Varios | 7 | 17-08-2005 13:32:34 |
mejor componente para trabajar con firebird. | KayserSoze | Conexión con bases de datos | 4 | 27-01-2004 17:57:08 |
|