Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Obtener la ruta donde se instala el programa con Inno Setup

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Obtener la ruta donde se instala el programa con Inno Setup Responder citando

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 Laughing)

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
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado
Mostrar mensajes de anteriores:   
Cambiar a:  
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


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.