Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-08-2012
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.211
Poder: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Si te fijas en el ejemplo que te pasé yo no asigno ningún Handle a Application ni lo uso como parámetro y funciona correctamente. No tiene sentido que pases el Handle de Application para luego volverlo a asignar a Application...

A parte de esa asignación, debes tener otro error en el código que no puedo reproducir pues a mi no me falla. En ocasiones un error de punteros ocasionan el fallo en otra zona del código.


Saludos.
Responder Con Cita
  #2  
Antiguo 11-08-2012
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 364
Poder: 21
Jose Roman Va por buen camino
Ok ensayare y te comento, gracias
Responder Con Cita
  #3  
Antiguo 13-08-2012
CSIE CSIE is offline
Miembro
 
Registrado: feb 2008
Ubicación: Universo paralelo
Posts: 69
Poder: 19
CSIE Va por buen camino
La forma de cargar la dll puede ser estática o dinámica. Escafandra te propone la forma estática, que es igual de válida, la diferencia principal es que en modo estático la dll debe estar presente siempre para poder ejecutar tu aplicación.

Respecto a la asignación del App handle la forma correcta debería de ser:

Código Delphi [-]
procedure ShowForm (AppHandle : THandle);
begin
  OldAppHandle := Application.Handle;
  try
    Application.Handle := AppHandle;
    ........
  finally
    Application.Handle := OldAppHandle;
  end;
end;

El Application.Handle no tiene porque ser el mismo el de la librería que el de la aplicación host.
Responder Con Cita
  #4  
Antiguo 13-08-2012
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 364
Poder: 21
Jose Roman Va por buen camino
Gracias CSIE,

Te muestro la parte del codigo:

Código Delphi [-]
if not dsUserPASS.IsNull then
begin
  if not DlgForm(Application.Handle, dsUserPASS.AsString) then
    MessageDlg(Error(1009),mtError,[mbOK],0);
end else
....
Si dejo solamente DlgForm(Application.Handle, dsUserPASS.AsString) e introdusco X cantidad de veces la confirmacion de la contraseña la aplicacion corre sin ningun problema, pero si se incluye el resto el primer intento de clave erronea no hay inconveniente para el segundo intento se genera el error antes mencionado y la aplicacion se bloquea.

Nota: Error(1009) es una funcion que esta incluida en la DLL

Pienso que el error se genera por incluir dos Handle, la primera que la genera la ventana de confirmacion de la contraseña y la segunda cuando aparece el mensaje de error, pero si es asi como se soluciona?

Última edición por Jose Roman fecha: 13-08-2012 a las 16:16:49.
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
Determinar en un Form Principal cuando se Cierra un Form Hijo Efren2006 OOP 5 26-02-2009 20:08:35
llamar al evento click de un boton q se encuentra en un form desde otro form TURBOIGOR OOP 6 02-12-2008 14:50:16
Como llamar form desde otros form y regresar a la linea que se estaba ejecutando Willy Rodrigo C++ Builder 1 03-08-2007 19:36:23
Form modal deja que el form llamante tome el foco tata Varios 6 17-05-2006 11:51:37
Imposible hacer visible un form desde otro form SMTZ .NET 13 16-01-2006 21:41:08


La franja horaria es GMT +2. Ahora son las 23:23:43.


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