Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-06-2007
nfrfabian nfrfabian is offline
Miembro
 
Registrado: ago 2006
Posts: 55
Poder: 18
nfrfabian Va por buen camino
Proyecto MDI, error al crear form hija

Hola a todos, perdon si vuelvo con mi problema de siempre, pero esta vez necesito una solucion definitiva porque sino pierdo el trabajo (o mejor dicho, al no encontrar solucion al problema voy a tener que dejar el proyecto). El problema es el siguiente: Tengo un proyecto del tipo MDI, tengo varias form hijas, de todas las form hijas hay una que necesito que se repita, es decir tengo un form del tipo fsMDIChild que lo guarde con distintos nombres, despues agrego los forms al proyecto teniendo por ejemplo forms adetallada, agendadetallada1, agendadetallada2, agendadetallada3, etc. El codigo que crea los forms es el siguiente:

Código Delphi [-]
  Application.Initialize;
  Application.CreateForm(TMainForm, MainForm);
  Application.CreateForm(TAboutBox, AboutBox);
  Application.CreateForm(Tagendadetallada1, agendadetallada1);
  Application.CreateForm(Tagendadetallada2, agendadetallada2);
  Application.CreateForm(Tagendadetallada3, agendadetallada3);
  Application.CreateForm(Tagendadetallada5, agendadetallada5);
  Application.CreateForm(Tagendadetallada6, agendadetallada6);
  Application.CreateForm(Tagendadetallada7, agendadetallada7);
  Application.CreateForm(Tagendadetallada8, agendadetallada8);
  Application.CreateForm(Tagendadetallada9, agendadetallada9);
  Application.CreateForm(Tagendadetallada11, agendadetallada11);
  Application.CreateForm(Tagendadetallada12, agendadetallada12);
  Application.CreateForm(Tagendadetallada13, agendadetallada13);
  Application.CreateForm(Tagendadetallada14, agendadetallada14);
  Application.Run;

El tamaño del ejecutable es de 5 mb aprox., el form agendadetallada tiene cientos de componentes tedits. Al proyecto tengo que agregarle 6 forms agendadetallada mas, pero no puedo ni agregarle uno mas porque aparece el error: 'system error. code: 14 Espacio de almacenamiento insuficiente para completar esta operacion.'
Se que no es un problema ni de disco ni de memoria porque tengo lo suficiente, 40 gb en disco libre y la memoria del sistema es de 1gb. Al ejecutar el programa con la funcion F8 (paso por paso) en el momento que se ejecuta la instruccion Application.CreateForm(Tagendadetallada15, agendadetallada15); aparece el mismo error.

Otra forma de crear el proyecto fue la siguiente: el form agendadetallada lo puse en el repositor de objeto con la funcion adecuada "Add to Repository", despues creo otro proyecto MDI y le adiciono los forms de la siguiente forma: File -> New -> Other..., despues selecciono el form agendadetallada y selecciono, cambio la opcion de "Copy" a "Inherit". Realizo estos pasos con la cantidad de forms que necesito, al compilar la aplicacion el tamaño del ejecutable llega a 1 mb, entonces pense que ahora si funcionaria pero el error sigue apareciendo.
Quizas el problema no es de mi aplicacion sino del mismo sistema operativo windows, o algun tipo de configuracion especial de windows para que me permita utilizar mas recursos del sistema (memoria, disco, etc). Un dato mas que les puedo dar es que cuando aparece el error y la aplicacion esta mostrando el error, no puedo abrir ningun otro programa (por ejemplo el internet explorer), el internet se empieza a cargar pero queda colgado, lo que me hace suponer que realmente es un problema de memoria o de configuracion de memoria, lo mismo ocurre cuando ejecuto una version del proyecto que funciona, es decir con la cantidad de forms necesario para que se ejecute, pero si quiero ejecutar otra instancia de la aplicación me aperace el mismo error. La solucion a mi problema se podria realizar de dos formas o por lo menos es lo que me parece:
1- Configurar al sistema operativo para que mi aplicacion utilice mas memoria que la que se le asigna a cada programa por defecto.
2- En mi aplicación crear los forms no de la forma por defecto (createform) sino mediande otra forma (getmem, memalloc o algo parecido), de tal forma que se le asigne la memoria necesaria a mi aplicacion desde el principio.

Quizas todo lo que digo esta mal, pero en este momento nose que otra cosa hacer mas que esperar alguna ayuda de ustedes. Muchas gracias.

Última edición por dec fecha: 17-06-2007 a las 22:23:28.
Responder Con Cita
 



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
Crear proyecto cliente / servidor Aprendiendo Conexión con bases de datos 1 02-01-2006 15:28:49
Crear Instalador para proyecto en Delphi mieltxo Varios 1 14-12-2005 12:05:38
En mi aplicacion MDI quiero crear una ventana hija desde otra ventana hija Durbed Varios 8 05-07-2005 11:51:54
Error en proyecto? danytorres Varios 1 05-12-2003 15:35:29
Como pasar parametros de una forma hija a otra forma hija luisreg OOP 3 17-09-2003 18:18:50


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


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