![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
![]() Holas, llevo muy poco progamando en delphi7, el problema a mi parecer es que me parece demasiado espacio q ocupa en memoria la apliacion. Doy detalles de lo q involucra la apliacion
trabajo con zeos (mysql5),suipack,sweetcontrols,fastreport,treeview menu, un componenete para utilizar webcam, librerias para biometrico. Porfavor alguno de ustedes savios en aplicaciones delphi ayudenme, porque quisiera saber si es algo q hice mal y por lo cual ocupa tanto espacio en memoria. gracias... |
#2
|
||||
|
||||
Hola reivaj_bo, bienvenido.
Como van las aplicaciones en JAVA y .NET sumado a los bajos precios de las DIMMs solo puedo decirte que esos 150 Mb. serán insignificantes. PD; intenta deshabilitar y rehabilitar funciones globales de tu sistema a ver donde estas provocando posibles MemoryLeaks. Saludos |
#3
|
||||
|
||||
¿imágenes, fotos, etc. enormes?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#4
|
||||
|
||||
Guardas reportes en los .dfm?
Deberías guardarlos fuera, si son muchos o muy pesados. Cuando ocupe el exe? No estará guardando cosas en memoria grabadas por la webcam? |
#5
|
||||
|
||||
¿Cuantos formularios tienes?
¿Los creas al inicio o los creas/destruyes cuando los necesitas? ¿Cuanto te ocupan en disco los DFM's -danos algun dato-? ¿Cuanto ocupa el ejecutable? ¿Utilizas componentes de Base de Datos? ¿Cuales utilizas -Tables/Querys-? ¿Utilizas TClientDatasets? ¿Ese tamaño es al inicio o a medida que la aplicación va trabajando va creciendo? ... Intenta dar más datos, sino es difícil ayudarte. ![]() ![]()
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#6
|
|||
|
|||
1. son 27 formularios
2. todos se crean al inicio 3. todos los dfm ocupan 7.70Mb. 4. 8.434 kb. 5. me conecto al Mysql via zeos tengo al rededor de unso 20 dataset 6. es al inicio Última edición por reivaj_bo fecha: 16-02-2009 a las 14:24:02. |
#7
|
||||
|
||||
Ahí lo tienes...
Cita:
Los .dfm normalmente ocupan de unos pocos Kb a 100 o 200 Kb Por ejemplo. Si tienes un componente TImage, puedes cargarlo desde un archivo externo y no tenerlo dentro del .dfm Algo así como TImage.LoadFromFile(NombreFichero); Última edición por duilioisola fecha: 16-02-2009 a las 14:51:02. |
#8
|
||||
|
||||
Cita:
2. Si no es necesario no deberías crearlos al inicio, ya que gastas recursos y tiempo. Crealos cuando los necesites y dstrúyelos cuando hayas finalizado con ellos. 3. Demasiado para simples formulario. Supongo que debes tener imágenes o componentes que guarden datos. Deberías explicar qué contienen esos forms; Ese puede ser el problema. Si estás repitiendo la imágenes deberías utilizar recursos externos. ¿Has utilizado herencia? 4. Correcto. 5. No debería afectar al tamaño. 6. Posiblemente por el peso de los formualrios y porque los creas todos al inicio.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#9
|
|||
|
|||
la mayoria de los formularios son para tomar datos, los que creo q deben pesar son con los cuales muestro fotos desde mi base de datos, talvez el capturador de imagenes por la webcam, y uso los componentes del suipack skin, para poder cambiar la apariencia de mis ventanas.
Gracias, voy a intentar en crear y destruid los forms. |
#10
|
||||
|
||||
Ves a las opciones del proyecto y elimina los formularios de la sección de AutoCreate forms.
Cuando los necesites, llama al constructor, en lugar de llamar directamente al Show. Revisa el tema de los skins; revisa el DFM (con un editor de texto) a ver qué es lo que ocupa ese espacio. Si estás utilizando SKINS, hay paquetes que permiten guardar el skin en el formulario (DFM), pero eso se hace una vez (en el form principal, por ejemplo) no en todos los formularios.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#11
|
||||
|
||||
Cita:
Precisamente son esos componentes SuiPack los que hacen que tus *.dfm ocupen tanto, porque "incrustan" en ellos las imágenes prediseñadas de los componentes de tu formulario en cada formulario. En la empresa donde trabajo, los compramos (porque se empeñó mi jefe) pero los tuvimos que dejar de usar porque los exes crecían desmesuradamente, y compramos los VCLSkin, que redibujan los componentes (que elijas, no tienen por que ser todos los del formulario) en tiempo de ejecución.
__________________
Progress Openedge https://abevoelker.com/progress_open...dered_harmful/ Delphi forever... Última edición por defcon1_es fecha: 18-02-2009 a las 13:36:34. |
#12
|
|||
|
|||
estoy utilizando este codigo para poder crear y liberar:
///////////////// var Alumnos : TAlumnos; begin Alumnos := TAlumnos.Create(Application); { Creamos la Form } Try Alumnos.Edit2.Text:=''; Alumnos.ShowModal; { La hacemos visible } Finally Alumnos.Free; { Liberamos la memoria, pase lo que pase } End; end; //////// , pero me sale un error de : /////// Cannot make a visible window modal. ?????? no entiendo pq no se puede ver el formulario |
#13
|
||||
|
||||
Seguramente está la propiedad 'visible' a true, ponla a false.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#14
|
||||
|
||||
¿Exactamente qué es lo que ocupa 7.7Mb? ¿El DFM?
Eso es un problema. Deberías saber exactamente qué es lo que está generando ese tamaño. Haz la prueba de eliminar componentes del formulario e ir grabándolo hasta que sepas qué es lo que te está provocando ese incremento. Un DFM normal con bastantes controles no debería pasar de 100kb (por decir un número). Otra opción es abrir el DFM con un editor sde texto y ver qué parte es la que ocupa esa cantidad de espacio.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#15
|
||||
|
||||
Conozco empresa miserables donde los equipos solo tiene 256MB con memoria compartida a Video y Windows XP. Aun así 150MB en lo personal es mucho, sino pregunta por las criticas de Firefox que en su última versión bordea entre 140MB y 200MB.
|
#16
|
||||
|
||||
Cita:
Recuerdo hace una decada que me convenía ahorrar hasta el ultimo Kb. de memoria usada porque mi memoria Convencional usable era de 600 Kb. +/- (descontando la utilizada por io, himem, mouse, ndos, etc.)... que tiempos aquellos. Cuando llego Güindos gradualmente todo se disparo por los cielos con aplicaciones como la que nombras... pero "y qué?" si ahora una DIMM de 2Gb. cuesta alrededor de 25 $us. y tan solo el Vista te consume 700 Mb. de ellos? Esa fue mi logica amigo MAXIUM, (tambien mi desacuerdo tecnico a esos lenguajes) y porque muy probablemente despues de otros 30 posts habremos ayudado a reducir tan solo 50 Mb. de la aplicacion de reivaj_bo ![]() |
#17
|
|||
|
|||
una vez, quite los formularios para q no se crearan automaticamente y los coloque de nuevo, hay formularios q aparecen al iniciar la aplicacion, me explico:
el primero formulario en aparecer es el de acceso a la base de datos ahora aparece 1º el formulario de busqueda de usuarios y despues el de acceso a la base de datos |
#18
|
|||
|
|||
he decidido ya no usar el suipack, por que ocupa demasiada memoria, y aora estoy usan el vcl skin, pero cuando quite el autocrear algunos formularios en las opciones del proyecto y los puse de nuevo, al iniciar aparecen ventanas como la de busqueda de usuario, alta de nuevo usuario antes de la del login para que pueda conectarse a la base de datos, y es algo que no pasaba hasta que lo quite del auto-create forms.
|
#19
|
||||
|
||||
Revisa cómo tienen esas ventanas la propiedad Visible. Si hace falta colócala a False o elimínalos del AutoCreate.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Cerrar aplicación antes de desconectar la memoria flash | MON___ | API de Windows | 3 | 13-01-2008 20:06:07 |
DCOM, instancias de una aplicación, Mensajes y Mapeo de ficheros en memoria | Aldo | OOP | 0 | 15-09-2006 18:09:36 |
Aplicacion carga muchas fichas en memoria. | zugazua2001 | Varios | 4 | 06-09-2005 17:40:41 |
mantener un archivo en memoria mientras ejecuta la aplicacion | agustincs | API de Windows | 8 | 01-09-2004 02:05:57 |
Administrar Memoria de Una aplicación mediana en maquina con pocos recursos | xtrem77 | API de Windows | 2 | 10-01-2004 01:22:52 |
![]() |
|