Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-06-2025
ArtPortEsp ArtPortEsp is offline
Miembro
 
Registrado: may 2018
Ubicación: Mexico
Posts: 176
Poder: 9
ArtPortEsp Va por buen camino
debug de un DM

Estoy depurando una aplicacion de terceros, es C/S (DataSnap)

Estoy depurando la parte del cliente, para esto, detuve el servidor de base de datos, para que la aplicacion enviara error; no deberia "tronar" al crear la forma principal y los DataModule, pero asi pasa...

Hay un DataModule Mclient, al crearse este intenta abrir una conexion en otro datamodule DataM. Sin embargo, ya revise el DFM y quite las referencias a la conexion FDCIRA en DataM (al menos en los 3 FDQuerys que habia ahi).

La enorme mayoria de componentes que hay en Mclient son FDMemtable y practicamente todos tienen campos persistentes.

La IA indica que el problema puede estar en un LookupDataset de alguno de los campos persistentes, ya que la aplicacion trata de activar la conexion en FDCIRA en el evento:

Código:
constructor TMclient.Create(AOwner: TComponent);
begin
  OutputDebugString('** Constructor de MClient INICIO');
  inherited;
  OutputDebugString('** Constructor de MClient POST inherited');

  DumpFDState(Self);
  OutputDebugString('** Constructor de MClient FIN');

  FInstanceOwner := True;
end;
justo en la linea inherited, que es donde se "carga" y se crean todos los componentes referenciados en el dfm.

Ahora bien, se que puedo ir componente por componente tratando de encontrar al "culpable", pero al ser tantos componentes FDMemTable cada uno con varios campos persistentes, me pregunto si alguno de uds conoce algun metodo o herramienta para depurar mas facil este error.
Responder Con Cita
  #2  
Antiguo 27-06-2025
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is online now
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.435
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Se me ocurre que revises que los componentes no estén activos en diseño.
Y una vez creados (después del create, en el Show , por ejemplo) los actives.
__________________
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.
Responder Con Cita
  #3  
Antiguo 27-06-2025
ArtPortEsp ArtPortEsp is offline
Miembro
 
Registrado: may 2018
Ubicación: Mexico
Posts: 176
Poder: 9
ArtPortEsp Va por buen camino
Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
Se me ocurre que revises que los componentes no estén activos en diseño.
Y una vez creados (después del create, en el Show , por ejemplo) los actives.
Bueno, exactamente eso es lo que quiero hacer, pero buscaba una forma de hacerlo automaticamente, finalmente desarrolle una pequeña utilidad que revisa los dfm en una carpeta buscando ciertas propiedades como ( Active = True o Connected = True ); y las reemplaza por False (creando un backup antes).

Me ahorro mucho tiempo de trabajo.
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
Debug un FOR MAXIUM Varios 3 09-07-2021 09:56:14
Debug in Delphi elrayo76 Varios 7 14-03-2020 00:12:07
Debug de Delphi Athalon Varios 11 06-12-2007 20:58:00
Problema DEBUG!!! neon Varios 1 06-04-2005 12:36:19
Debug agonzalez Varios 16 02-07-2004 16:42:07


La franja horaria es GMT +2. Ahora son las 15:41:20.


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