Archivos necesario para incluir con ejecutable

Hola, acabo de compliar mi proyecto. Me funciona perfectamente dentro de fox.
Necesitaría hacer que funcione en cualquier pc, o sea que no requiere de fox.
Cree una carpeta con el .exe generado, los archivos .dll de fox (vfp... Dll) y un archivo config.fpw, pero al ejecutar el proyecto me dice que no encuentra la base de datos.
Necesitaría saber:
¿Qué archivos tengo que incluir?
¿Qué debo definir en el programa principal para que funcione en cualquier pc?
Desde ya, muchas gracias
1

1 Respuesta

59.025 pts.
Espero poder ayudarte:
Bueno, lo que hiciste está perfecto.
Ahora, el tema de la base de datos es todo un tema.
Tienes que definir una ruta de acceso a los datos que sea lo más neutral posible a la hora de ejecutar tu sistema, tanto en modo local como en modo de red.
Cuando abrís los datos en tu sistema, seguramente haces algo como..
Use misDatos
Bueno. Si esa ruta es relativa a una posición en tu disco, la misma posición debería tener en donde lo instalas. Por ejemplo.
Si en tu disco, tu sistema esta en c:\sistema\ y la base de datos esta en c:\sistema\datos en lo de tu cliente debería ejecutarse en el mismo lugar.
Si quieres mayor flexibilidad esta bueno usar la ruta relativa a la base de datos para abrirla.
Si tu sistema está en c:\sistema y los datos en c:\sistema\datos, en lugar usar use c:\sistema\datos\miBase, podrías usar use .\datos\miBase
Lo mejor y más profesional es hacer un form donde el usuario pueda poner la ruta a los datos y esa información grabarla en una tablita en el raíz de tu sistema. Entonces, al iniciar tu sistema harías algo así.
Supongamos que este archivo se llama ruta y tiene un campo que se llama ruta c(200)
Al iniciar tu sistema quedaría algo así:
Use ruta
xRuta=alltrim(ruta.ruta)
Esa variable te queda para todo el sistema, porque lo harías en el programa principal, entonces, al abrir la base pondrías:
use xRuta+'mibase'
Con respecto a que archivo deberías incluir aparte de los que mencionas, serian todas los datos obviamente. También los datos que vengan vacíos, para eso te conviene tener siempre una carpeta para distribuir con los datos vacíos y una para tus pruebas de programación.
Bueno, espero que haya sido de utilidad
Cualquier cosa estoy a tu disposición
Hola, estoy tratanado de seguir tus consejos.
Tengo un problema al ejecutar el sistema compilado, me pone "la propiedad de la clave principal no es válida, valide la base de datos".
El problema debe estar en el formulario "login", ya que si llamo a otro que no sea ese (en mi programa principal), no me tira ese error.
El el load del formulario login puse:
SELECT 0
Use usuarios
En mi base de datos tengo una tabla que se llama usuarios con los datos de los mismos (tiene como clave principal "código" de usuario).
No me voy cuenta cual es el problema.
Desde ya muchas gracias
Pude solucionar el error de "la propiedad de la clave principal no es válida" piando la tabla de usuarios en la carpeta que estoy armando con ejecutable. Yo pensaba que no era necesario copiar todas las tablas.
Resumiendo... Para armar un carpeta que se pueda ejecutar en cualquier pc, tengo que copiar todos los archivos que generé con el proyecto (formulario, tablas, etc).
¿Pero de esta manera no estoy dando la posiblididad que cualquier usuario pueda modificar el código abriendo los archivos con fox?
No es asi
Los archivos incluidos en el proyecto no se llevan.
Es más, en el mismo proyecto podes poner (en las opciones) que se encripten los datos.
Los datos no pueden estar en el proyecto salvo que estén excluidos, porque quedarían de solo lectura en el exe.
No, lo único que deberías verificar es que exista la ruta de acceso.
Algunas veces, usando el install shield se desasocia el archivo que lee la ayuda con la ayuda en cuestión. Si instalaste con install shield, volvé por restaurar punto y verifica que no sea un problema de la computadora cliente. Para esto, simplemente hace doble click sobre el archivo de ayuda y fíjate si desde afuera de tu sistema, el sistema operativo la abre.
Bueno, pero por favor si seguimos con este tema, te pido que cierres la pregunta anterior y sigamos con una nueva pregunta.
Nos vemos.
Muchas gracias
Muchas gracias por la ayuda, he solucionado mi problema.
Ahora, lo que me pasa es que no me abre la ayuda cuando copio el sistema compilado en otra pc. Tengo que incluir algo, ¿además del archivo de ayuda?
En mi programa principal coloco lo siguiente:
SET HELP TO "C:\sigesv1.0\ayuda_siges.chm"
SET HELP ON
Esta duplicada la pregunta. Arriba esta la respuesta.
Un abrazo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas