realizar un instalador
hola amisgos del foro, nuevamente quisieria pedir ayuda en estes foro...espero q me puedan ayudar....tengo un problema con mi instalador... tengo un programa o aplicacion hecha en c++ builder, utilicé un instalador para realizar el instalador de mi programa, una vez que termino, instalo el sistema y todo, todo funciona bien pero si esta instalado c++ builder en la maquina.
si lo instalo en otra maquina, a la hora de ejecutar el sistema o abrir, me marca un mensaje que falta un archivo.. no se a q se deba, quisiera saber como hacer el instalador para que funcione en cualquier maquina sin tener instalado c++ builder. si alguien podria ayudarme, se lo agradezo mucho de antemano. agradezco igual a todos los que me han ayudado con sus repuestas, gracias. Saludos. |
Cita:
|
Que tal,
Puedes compilar tu proyecto con los paquetes incluidos, de manera que se incluyan todos los bpls necesarios al exe, aunque sobra decirte que va a quedar algo grande dicho ejecutable. Por otro lado, si tu aplicacion hace uso de acceso a base de datos, y mas si es por BDE, tienes que distribuir los archivos necesarios para el acceso a esta. Saludos. |
hola amigos, gracias por su respuestas, pero diganme como le hago para agregar los archivos q faltan, me dice q falta el archivo vcl60.vpl pero no se como agregarlos... porfavor expliquenme un poco... muchas gracias...
|
Revisa las opciones de compilación de tu proyecto para que la aplicación se genere en un único fichero ejecutable.
Desmarca la opción "compile with runtime packages" (o similar); De esta forma tu ejecutable será más grande, pero llevará incluído todo lo necesario, salvo que necesites librerías para bases de datos o componentes externos. Otra opción es dejarlo como hasta ahora y añadir a tu instalador ess archivos que te va pidiendo para que se instalen junto con el ejecutable. |
hola amigo neftali, ya hice lo que me sugeristes,deshabilito la opcion build with runtime packages, pero al compilarlo me marca 10 errrores ...
undefined structure SysUtils_2....y todo parecido..., no sea q se deba, pues es una pestaña SysUtils.hpp la q me aparece... podrias ayudarme por favor... gracias amigo. |
La verdad es que en builder no puedo ayudarte mucho.
El tema de las opciones de compilación y la generación del EXE, porque es similar a delphi, pero una vez entramos en errores, deberá echarte una mano algun otro compañero... :o:o:o |
Es muy raro que sólo cambiando esa opción dé esos problemas. En principio debería compilar igual independientemente del modo en que se utilicen las bibliotecas.
¿Podrías copiar todos los mensajes y ponerlos aquí? Puede que de esa forma nos des alguna pista más. |
Cita:
ok. amigo ñuño, disculpa por no contestarte luego, el codigo del error q me aparece es este SysUtils.hpp(193) Undefined structure "SysUtils_2" SysUtils.hpp(193) Size of 'FSysLanngs' is unknown or zero SysUtils.hpp(193) Undefined structure "SysUtils_2" Classes.hpp(1543) expected .... y asi me marca 10 errores... la verdad es q no tengo ni idea de cual sea el problema, a ver si alguien puede responderme.. Muchas gracias a todos y y mil gracias de antemano. |
Pues así, de primeras, creo que le falta algún archivo. Pero también puede ser por las opciones de compilación, que activen algún "#ifdef" perdido por ahí que impida que se defina algún símbolo. No sé qué más puedo decir...
|
bueno, checare a ver cual sea el archivo q fata, gracias por la yuda amigo.Saludos.
|
De nada. Pero no pierdas de vista heste hilo, por si algún compañero tiene una inspiración.
|
|
amigo escafandra, gracias por la yuda, pero mira intento la opcion como me dices, pero me marca muchos errores a la hora de ejecutarlo, intento con un nuevo formulario en limpio y me marca lo mismo, no sea q se deba, pues ya cheque bien y no le encuentro:
extern PACKAGE System::ResourceString _SUnknown; #define Sysconst_SUnknown System::LoadResourceString(&Sysconst::_SUnknown) extern PACKAGE System::ResourceString _SInvalidInteger; #define Sysconst_SInvalidInteger System::LoadResourceString(&Sysconst::_SInvalidInteger) extern PACKAGE System::ResourceString _SInvalidFloat; #define Sysconst_SInvalidFloat System::LoadResourceString(&Sysconst::_SInvalidFloat) extern PACKAGE System::ResourceString _SInvalidCurrency; #define Sysconst_SInvalidCurrency System::LoadResourceString(&Sysconst::_SInvalidCurrency) extern PACKAGE System::ResourceString _SInvalidDate; #define Sysconst_SInvalidDate System::LoadResourceString(&Sysconst::_SInvalidDate) extern PACKAGE System::ResourceString _SInvalidTime; #define Sysconst_SInvalidTime System::LoadResourceString(&Sysconst::_SInvalidTime) extern PACKAGE System::ResourceString _SInvalidDateTime; #define Sysconst_SInvalidDateTime System::LoadResourceString(&Sysconst::_SInvalidDateTime) extern PACKAGE System::ResourceString _SInvalidDateTimeFloat; #define Sysconst_SInvalidDateTimeFloat System::LoadResourceString(&Sysconst::_SInvalidDateTimeFloat) extern PACKAGE System::ResourceString _SInvalidTimeStamp; #define Sysconst_SInvalidTimeStamp System::LoadResourceString(&Sysconst::_SInvalidTimeStamp) extern PACKAGE System::ResourceString _SInvalidGUID; #define Sysconst_SInvalidGUID System::LoadResourceString(&Sysconst::_SInvalidGUID) extern PACKAGE System::ResourceString _SInvalidBoolean; #define Sysconst_SInvalidBoolean System::LoadResourceString(&Sysconst::_SInvalidBoolean) extern PACKAGE System::ResourceString _STimeEncodeError; #define Sysconst_STimeEncodeError System::LoadResourceString(&Sysconst::_STimeEncodeError) extern PACKAGE System::ResourceString _SDateEncodeError; #define Sysconst_SDateEncodeError System::LoadResourceString(&Sysconst::_SDateEncodeError) |
Está claro que intentas compilar con un PACKAGE ResourceString.
Mira si esto te ayuda. |
bueno amigo, creo que es asi como lo estoy haciendo, cuando desmarque las opciones empezó a marcar esos errores, y lo pruebo con un nuevo formulario y marca lo ismo, cuando vuelvo a marcar las opciones como estaba antes, aun asi siguen los errores, o cualquier proyecto que abra,pero si desmarco la opciones como me habias dicho....
|
Una pregunta, ¿Ese Package lo tienes instalado tu? o ¿el proyecto es de una tercera persona o lo cambiaste de ordenador?. Digo esto porque si creaste el proyecto en un ordenador con ese package y luego compilas en otro que no lo tiene instalado, saltará siempre ese tipo de error, aunque linkes de forma estática o dinámica.
Si ese package no lo usas, entonces eliminalo de la lista. Saludos. |
hola, mira el proyecto lo hice en mi propio ordenador, lo compilo y marca lo anterior, pero no recuerdo instalar algun package, lo compilo en mi propio ordenador, pero al hacerlo ahora marca los errores q mencioné, lo elimino y marca más errores.... todo lo estoy haciendo en mi propio ordenador, por eso es q no le entiendo....
|
Fijate en el cuadro donde pone "build with runtime packages". debajo tienes un control edit con la lista de los packages que vas a utilizar en el proyecto. Si has eliminado alguno que estes usando, Builder te deará error cuando intente el linkado. Esa lista está por defecto, a no ser que desinstales realmente (y no el simple borrado, que solo afecta al proyecto en curso) algún package.
Trata de hacer un nuevo proyecto para hacer pruebas. Si te siguen los fallos, posiblemente tengas desinstalado packages necesarios de las VCL y lo mejor es que realizes una reinstalación del Builder en modo reparación. Te aseguro que la forma que te he descrito para conseguir ejecutables portables funciona a la perfección y la uso comúnmente para programas pequeños y algunos no tan pequeños.;) Saludos. |
ok, amigo voy a probar todo nuevamente y a volver a instalar builder a ver q hace.. de todos mods te seuire escribiendo por si algo pasa, muchisimas gracias por tu ayuda amigo, Saludos.
|
Hola, espero poder ayudarte. Para que un programa pueda correr en cualquier máquina pues es necesario hacer lo que se llama el empaquetado.
Una vez que tienes listo tu programa debes ir a las opciones del proyecto, en la pestaña Linker desmarcas la opcion Use dynamic RTL, luego en la pestaña Packages desmarcas Build with runtime packages. Es lo único que debes desmarcar.Ahora solo tienes que compilar todos los proyectos y listo. Ahora si necesita de algún archivo (base de datos u otros documentos) necesitas guardarlos junto con el ejecutable. Bueno al menos eso es lo que yo hago y me funciona sin problemas. Espero que puedas solucionar tu problema, suerte! |
gracias amigo, voy aa checar todo bien...ya entendi lo q debo hacer, solo que no sea cual sea el error que me marca, de hecho voy a instalar nuevamnete todo y volver a probar....muchisimas gracias ya todos igual...Saludos.
|
conseguiste solucionarlo??
Un saludo |
gracia de antemano
hola, amigos yo realize todos los pasos que esta citados, y no me marco los mismos herro que dicen pero si me marca un error sobre algo de la base de datos, no se si me pudieran ayudar a solucionarlo, se los agradeceria muchoo.
|
Cita:
Saludos. |
mira lo que pasa es que ya inclui las bases de datos pero es algo sobre el sistema, no sabes tu como hace un portable, es que no se si me falte algo por realizar y eso sea lo que paso.
si sabes como te agradeceria el tip... |
|
gracias por la ayuda, los paso que muestran los link ya los realize ero no se ke psa que me marca un error...pero ya resolvi el problema, de todas formas gacias por tu ayuda....
bye |
Pues ya podias postear la solución y así quedarías como un señor y ayudar a otros con problemas similares.
Solo es un comentario sin animo de ofender. Saludos |
pues mis olucion no es muy bueno que dijamos por eso no la comente, pero dado los sircunstancias, lo que hice es intalar bulder en la maquina donde correra el sistemas y asi pues como sabran no maraca ningun error...
no es muy buena mi solucion asi que busquen otra....bye |
La franja horaria es GMT +2. Ahora son las 23:41:50. |
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