Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-11-2016
lago lago is offline
Miembro
 
Registrado: nov 2015
Posts: 40
Poder: 0
lago Va por buen camino
Extraño problema al ejecutar mi aplicación desde "Archivos de programa"

Hola a todos, agradecería un poco de ayuda por favor! no entiendo nada... os comento:

He hecho un programa con XE7, todo funciona bien, cojo sus .dll's y sus archivos de configuración junto con su .exe y lo copio en una carpeta en el escritorio listo para empaquetar... lo ejecuto y perfecto... PERO ... si lo copio a C:\Archivos de programa, o C:\Archivos de programa (x86) al ejecutarlo se arranca en segundo plano... y después de un rato se abre.... (??)

El programa no requiere privilegios de administrador para usarse, al arrancarlo desde cualquier otro lado que no se las carpetas de sistema funciona bien, si no segundo plano... me tiene loco, no entiendo que puede pasar...

He creado otros proyectos de 32 y 64 bits con un par de formularios, los he compilado y los he copiado a mano a C:\Archivos de programa y si arrancan bien...

¿Alguien sabe donde he podido meter la pata?

Muchisimas gracias por vuestra atención

Un saludo

Jorge.
Responder Con Cita
  #2  
Antiguo 20-11-2016
Snaked Snaked is offline
Baneado
NULL
 
Registrado: sep 2016
Posts: 102
Poder: 0
Snaked Va por buen camino
hola jorge

A veces el sistema, se vuelve inestable y "sucio" y pasan cosas extrañas en el funcionamiento.... has probado a REINICIAR el PC con un arranque en LIMPIO y ver como se comporta el programa?? has probado a darle privilegios de Administrador en las PROPIEDADES del programa???

Tambien puede ser que se haya corrompido el proyecto o algo en el compilador.....si ves que no lo solucionas, copia los cpp y los hpp y prueba a crear de nuevo la aplicacion y luego le copias los ficheros cpp y hpp y forms en donde hayas creado el proyecto nuevo.....yo a veces he tenido que hacer eso con proyectos que funcionaban mal
Responder Con Cita
  #3  
Antiguo 21-11-2016
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Si hablas de "archivos de configuración" entonces es probable que dichos archivos sean leídos y también escritos desde tu programa. Ahora bien, no podemos escribir archivos en carpetas como "Archivos de programa", sino que dichos archivos de configuración deberían situarse en directorios como "AppData", por ejemplo. Puedes buscar más información sobre directorios "especiales". La unidad "SHFolder.pas" te ofrece la posibilidad de obtener sus rutas. La cosa es que deberías ver algún error al tratar de escribir en un archivo dentro de "archivos de programa", pero, también puede ser que tu programa esté evitando mostrar este tipo de errores. En todo caso piensa en lo dicho: los archivos de configuración han de situarse fuera de "Archivos de programa".
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 21-11-2016
lago lago is offline
Miembro
 
Registrado: nov 2015
Posts: 40
Poder: 0
lago Va por buen camino
Hola!, muchas gracias por vuestras respuestas, Snaked
Cita:
A veces el sistema, se vuelve inestable y "sucio" y pasan cosas extrañas en el funcionamiento.... has probado a REINICIAR el PC con un arranque en LIMPIO y ver como se comporta el programa?? has probado a darle privilegios de Administrador en las PROPIEDADES del programa???
Si, como administrador arranca bien desde Archivos de programa

Cita:
Tambien puede ser que se haya corrompido el proyecto o algo en el compilador.....si ves que no lo solucionas, copia los cpp y los hpp y prueba a crear de nuevo la aplicacion y luego le copias los ficheros cpp y hpp y forms en donde hayas creado el proyecto nuevo.....yo a veces he tenido que hacer eso con proyectos que funcionaban mal
Eso pensaba hacer hoy a ver si algo falló...

Dec
Cita:
Si hablas de "archivos de configuración" entonces es probable que dichos archivos sean leídos y también escritos desde tu programa. Ahora bien, no podemos escribir archivos en carpetas como "Archivos de programa", sino que dichos archivos de configuración deberían situarse en directorios como "AppData", por ejemplo. Puedes buscar más información sobre directorios "especiales". La unidad "SHFolder.pas" te ofrece la posibilidad de obtener sus rutas. La cosa es que deberías ver algún error al tratar de escribir en un archivo dentro de "archivos de programa", pero, también puede ser que tu programa esté evitando mostrar este tipo de errores. En todo caso piensa en lo dicho: los archivos de configuración han de situarse fuera de "Archivos de programa".
Efectivamente, tengo un fichero de configuración que leo, pero no escribo al arrancar el programa. Lo que me extraña es que el programa no de ningún error, de hecho a los 2 o 3 minutos termina por ejecutarse... algo que me desconcierta mil... el programa aparece en la lista de tareas como en segundo plano... igualmente voy a hacer lo que me dices y escribir la configuración fuera... tiene toda la pinta de ser algo del estilo...

Muchas gracias a los dos y un saludo! esta tarde me pongo a ello y os comento
Responder Con Cita
  #5  
Antiguo 21-11-2016
Snaked Snaked is offline
Baneado
NULL
 
Registrado: sep 2016
Posts: 102
Poder: 0
Snaked Va por buen camino
hola jorge:

prueba tambien a darle a la opcion Project->CLEAN (tu proyecto) y volver a hacer el Make y el Build de nuevo.....

a veces los proyectos se "estropean" y tienes que volver a Create New Forms Application y reconstruirlo con un poco de copiar el codigo y funciones al nuevo archivo generado

Espero que lo soluciones..

Un Saludo
Responder Con Cita
  #6  
Antiguo 21-11-2016
lago lago is offline
Miembro
 
Registrado: nov 2015
Posts: 40
Poder: 0
lago Va por buen camino
Nada... Snaked, he limpiado también pero nada...

He re-escrito la función que me devuelve las rutas del programa y demás y he añadido una condición según si el programa sera compilado como portable o no, utilizando GetHomePath(); que me devuelve la ruta al directorio de programa donde puedo escribir en sus configuraciones y demás.

El programa al ejecutarse desde Archivos de Programa\miprograma sigue haciendolo en segundo plano...

He creado un proyecto nuevo y he copiado los formularios y adaptado a ver si había algo "tocado" como decias Snaked... y nada, lo mismo...

Quizás tenga algo que ver con los ficheros RESOURCE? apenas guardo 5 imagenes png y 3 sonidos wav.... no se... me tiene frito... como administrador funciona bien ejecutandolo desde Archivos de Programa\miprograma , pero como usuario salta al segundo plano y adios...


Se os ocurre algo más?? muchas gracias por vuestra ayuda

Jorge.
Responder Con Cita
  #7  
Antiguo 23-11-2016
Snaked Snaked is offline
Baneado
NULL
 
Registrado: sep 2016
Posts: 102
Poder: 0
Snaked Va por buen camino
se me ocurre que podrias utilizar el InstallExpress para crear un Setup de instalación y ver que resultado te da ya que lo instala en PROGRAMAS de Inicio y eso...quizas asi te funcione....
Responder Con Cita
  #8  
Antiguo 23-11-2016
lago lago is offline
Miembro
 
Registrado: nov 2015
Posts: 40
Poder: 0
lago Va por buen camino
Snaked al hacer la instalación con el installshield fue cuando saltó la liebre de que algo le pasaba al programa...

Solucionado! pese a que modifiqué la función de lectura de configuración a la carpeta que decía dec, seguía teniendo ficheros de idioma en la carpeta de instalación donde el programa no escribe nada nunca.

El problema es que utilizaba la función "sqlite3_open" en la función de consultas a la base de datos. Dicha función abre el fichero para lectura/escritura y he ahí el error que me estaba dejando tonto... ahora uso "sqlite3_open_v2" que permite utilizar una flag "SQLITE_OPEN_READONLY" para que no abra el archivo en modo escritura... programa funcionando..

Muchas gracias por vuestra ayuda... he aprendido cosas interesantes sobre los nuevos windows y sus carpetas, la verdad es que en sistemas mono usuario y sin privilegios era más fácil programar )

Un saludo!!

Jorge.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
[Favor] "Traducir" archivos dfm de programa código abierto Ñuño Martínez La Taberna 7 23-04-2010 13:20:09
El programa se queda "colgado" mientras copia y luego "despierta" NeWsP OOP 5 10-03-2010 22:05:40
Comando "Ejecutar" de Windows XP, desde Delphi BuRtOn Varios 15 25-08-2008 17:07:15
¿Cómo mostrar UN Doc. "PowerPoint" desde un Programa en Delphi? MACOII Servers 2 23-07-2008 21:16:01
Fichero "Del1.MB" al ejecutar aplicación jsc Tablas planas 7 16-08-2007 21:28:07


La franja horaria es GMT +2. Ahora son las 02:00:04.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi