 |
Club Builder Foro de C++Builder en español
|
| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
paco30 Cdt

Registrado: 24 Jul 2006Mensajes: 18
|
Publicado: Mie 06 Sep, 2006 6:14 pm Asunto: Obtener la ruta donde se instala el programa con Inno Setup |
|
|
Hola de nuevo, tengo una duda que no he conseguido resolver ppor muchos que busque en webs y libros.
Mi preguntra es como puedo yo saber, cunado instalo el programa con inno setup, en que directorio se ha instalado el programa. Es decir, la variabla {app} de Inno setup (para entendernos)
El tema está en que, cuando ejecuto mi programa desde el directorio dodne está instalado pues perfecto (me meto en C:\Archivos de programas\MiPrograma.exe) ya que en ese mismo directorio están los ficheros y las bases de datos a las que accede, por tanto cuando intenta acceder a ellos pues lo encuentra.
El problema viene cuando el programa lo ejecuto desde el menu inicio o desde el incono de acceso directo en el escritorio. Entonces no encuentra esos ficheros ya que el programa arranca desde un directorio que no es su directorio de trabajo, entonces al buscar la base de datos no la encuentra. No se si me he explicado con claridad (espero q si )
Entonces para solucionar el problema pensé en (de alguna manera, ) obtener el directorio de trabajo donde está instalado el programa (C:Archivos de Porgrama\Miprograma.exe) y almacenarlo en un fichero. De manera que cada vez q se ejecutara el programa (desde el acceso directo o escritorio) pues pudiera cambiar el directorio actual con chdir(char * path) y situarme en el directorio de trabajo del programa. PERO luego pensé q volviamos otra vez al mismo problema (debería estar en el directorio de trabajo para poder leer el fichero donde esta el path correcto) por tanto sigo con el mismo problema.
A ver si me podeis dar ideas, o decir como lo podría programar
muchas gracias, y saludossssssss |
|
| Volver arriba |
|
 |
_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Mie 04 Oct, 2006 6:05 am Asunto: |
|
|
Hola, si lo que necesitas es saber la ruta desde donde se está ejecutando tu programa puedes obtenerla del siguiente modo:
Por ejemplo, si tu programa se está ejecutando desde "C:\Archivos de programas\tuDirectorio\MiPrograma.exe" en "Application->ExeName" tienes exactamente eso, y si solo quieres la ruta puedes usar la función "ExtractFilePath", que en este caso devolvería "C:\Archivos de programas\tuDirectorio\", por ejemplo:
| Código: | String ruta = ExtractFilePath(Application->ExeName); |
|
|
| Volver arriba |
|
 |
|
|
No puedes publicar temas nuevos en este foro No puedes responder a temas en este foro No puedes editar tus mensajes en este foro No puedes borrar tus mensajes en este foro No puedes votar en las encuestas de este foro
|
© 2002–2026 Club Builder · Funciona con phpBB.
|