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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #41  
Antiguo 18-09-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por gdlrinfo Ver Mensaje
OK disculpas !!!!! Y gracias!!!
Gracias por tu comprensión
Responder Con Cita
  #42  
Antiguo 19-09-2014
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Poder: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
shoulder,
Cita:
Empezado por shoulder
...JSignPdf 1.4.5 - CAPICOM 1.0.1.32...


Te sugiero:

1- Probar el código del Msg #11 y ver como se comporta en relación al problema descrito.

2- Probar las últimas versiones de JSignPdf versión 1.6.0 y CAPICOM versión 2.1.0.1 y ver como se comporta en relación al problema descrito.

Revisa esta información:
Espero sea útil

Nelson.
Responder Con Cita
  #43  
Antiguo 19-09-2014
engranaje engranaje is offline
Miembro
 
Registrado: may 2011
Posts: 163
Poder: 13
engranaje Va por buen camino
Si esta pasando lo que yo sospecho, aunque en el Button1Click lanzaras cualquier ejecutable (el notepad.exe mismo)
y despues lanzaras el
Código Delphi [-]
MessageDlg(MsgUser,mtInformation,[mbOK],0);
tendrias el mismo problema, podrias probarlo si no fuera mucha molestia. Por otra parte si pudieras hacer otro boton
con el mismo código pero en vea de llamar a messgedlg lo que hicieras fuera crear un nuevo formulario para mostrar mensajes
pasandole el formulario padre como owner y lo llamaras con showmodal es posible que evitaras el problema.
Yo probaría esas dos opciones.
Me temo que si trazas los showmessage y los messageDlg por la vcl hasta el momento en que
hacen el sendmessage para llamar a la api de windows y crear la ventana, y lo comparas con el modo en el que se envia el
mensaje para crear el form podras ver alguna diferencia en los parametros que se pasan. Si estoy en lo cierto esa diferencia es
la que provoca el comportamiento que te preocupa.
Responder Con Cita
  #44  
Antiguo 19-09-2014
shoulder shoulder is offline
Miembro
 
Registrado: abr 2008
Posts: 441
Poder: 17
shoulder Va por buen camino
Minimizar

Tenian razon cuando se llama a algo externo sea token, notepad..etc, al regreso me aparece la ventana minimizada. De las 4 veces que probe una sola vez me aparecio bien. Probe el ejemplo del :

Cita:
procedure TForm1.Button1Click(Sender: TObject);
var
MsgUser : string;
begin
ShellExecute(Handle,'open', 'c:\windows\notepad.exe','c:\cc.txt', nil, SW_SHOWNORMAL) ;
MessageDlg(MsgUser,mtInformation,[mbOK],0);
end;

Responder Con Cita
  #45  
Antiguo 19-09-2014
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Poder: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
shoulder,

Cita:
Empezado por shoulder
...Tenían razón cuando se llama a algo externo sea token, notepad..etc, al regreso me aparece la ventana minimizada...
Cita:
Empezado por engranaje
...en ves de llamar a MessageDlg lo que hicieras fuera crear un nuevo formulario para mostrar mensajes pasándole el formulario padre como owner y lo llamaras con Showmodal es posible que evitaras el problema...


Te sugiero probar el siguiente código en sustitución de la función MessageDlg y ver como se comporta en relación al problema descrito:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
   MsgDialog : TForm;
   MsgUser : String;

begin

   MsgUser := 'Mensaje al Usuario';
   MsgDialog := CreateMessageDialog(MsgUser, mtWarning, [mbOk]) ;
   MsgDialog.FormStyle := fsStayOnTop;
   MsgDialog.ShowModal;
   MsgDialog.Free;

end;
El código anterior en Delphi 7 sobre Windows 7 Professional x32, crea un formulario de mensajes para el usuario, lo coloca al tope del Z-Order y lo muestra en modo ShowModal.

Espero sea útil

Nelson.
Responder Con Cita
  #46  
Antiguo 22-09-2014
engranaje engranaje is offline
Miembro
 
Registrado: may 2011
Posts: 163
Poder: 13
engranaje Va por buen camino
Si no me equivoco, sucede que cuando creas una ventana desde delphi 7, bien creando tu propio form, con un showmessage o con un messagedlg, al final y siguiendo la vcl vas a llegar al
Código Delphi [-]
  TCustomForm.CreateWindowHandle(const Params: TCreateParams)


y dentro a la llamada a la api en cuestion bien a
Código Delphi [-]
WindowHandle := SendMessage(Application.MainForm.ClientHandle,
      WM_MDICREATE, 0, Longint(@CreateStruct));
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx

o a

Código Delphi [-]
CreateWindowEx(ExStyle, WinClassName, Caption, Style,
      X, Y, Width, Height, WndParent, 0, WindowClass.hInstance, Param);

http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx

Según los parametros que en útima instancia se le esten pasando a CreateWindowHandle. Bien, si no me equivoco al llamar a otra aplicación con ShellExecute, esa otra aplicación pasa a estar activa mientras la nuestra pasa a segundo plano. Con la nuestra en segundo plano al llamar amn showmessage o messagedlg al final lo que hace es enviar al sistema un mensaje WM_MDICREATE creando una nueva ventana que tiene como "padre" en el zorder al mainform. Lo que creo es que como nuestra aplicación no está activa la ventana se crea efectivamente pero no como esperamos.

Siento no poder ser de mucha ayuda pero si ya has sido capaz de llegar hasta ese punto yo solo probaría con ese form propio asegurandote de que el padre y el owner es el form desde el que se llama para que finalmente la llamada a la api sea a createWindowEx y el wndParent sea el form desde el que se llama (si no me equivoco el activo en nuestra aplicación). Creo de veras que de este modo podria solucionarse el problema.
Responder Con Cita
  #47  
Antiguo 23-09-2014
shoulder shoulder is offline
Miembro
 
Registrado: abr 2008
Posts: 441
Poder: 17
shoulder Va por buen camino
Minimizar

Gracias por todo. Al final les dije a los usuarios si ven bloqueado el programa hagan click en la barra de windows porque la ventana esta minimizada y ya se acostumbraron. Aclaro no siempre se comporta asi.
Responder Con Cita
  #48  
Antiguo 24-09-2014
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Poder: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
shoulder,

Cita:
Empezado por shoulder
...Al final les dije a los usuarios si ven bloqueado el programa hagan click en la barra de Windows porque la ventana esta minimizada...ya se acostumbrarón...


Nelson.
Responder Con Cita
  #49  
Antiguo 16-06-2015
shoulder shoulder is offline
Miembro
 
Registrado: abr 2008
Posts: 441
Poder: 17
shoulder Va por buen camino
Mensajes Minimizados

Hola hace tiempo habia posteado este tema pero sigo sin resolverlo por si a alguno le sucede. Despues de firmar digitalmente (no siempre), usando showmessage o MessageDlg, me llaman que la aplicacion quedo trabada y no es asi, el mensaje esta minimizado y hago click sobre el icono del programa en la barra de tareas y continuan bien. Pero es molesto para el usuario.

Hay una forma para dar la orden de que el mensaje no salga minimizado?, por lo que veo despues de usar el Java del firmador vuelve al programa y algo en el delphi hace que se vea el mensaje minimizado pero en forma random no siempre lo hace.

Gracias.
Responder Con Cita
  #50  
Antiguo 16-06-2015
Avatar de Caminante
Caminante Caminante is offline
Miembro
 
Registrado: oct 2010
Ubicación: Lima - Peru
Posts: 338
Poder: 14
Caminante Va camino a la fama
Hola.

¿Y si utilizas application.messagebox pasa lo mismo?

Bueno es solo una sugerencia. A mi nunca me ha pasado eso.

Saludos
__________________
Caminante, son tus huellas el camino y nada más; Caminante, no hay camino, se hace camino al andar.
Antonio Machado
Responder Con Cita
  #51  
Antiguo 16-06-2015
shoulder shoulder is offline
Miembro
 
Registrado: abr 2008
Posts: 441
Poder: 17
shoulder Va por buen camino
Mensaje minimizado

Gracias voy a probar, porque cada tanto me llaman y me dicen no anda el sistema.......
cuando abro un programa que hice para scanear solucione el tema agregando

Cita:
vHandle := FindWindow(nil, 'Scanear');
if vHandle <> 0 then
SetForegroundWindow (vHandle);

Pero con un mensaje no se como llamar.
Gracias.
Responder Con Cita
  #52  
Antiguo 16-06-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola shoulder.

Existían tres hilos referentes al mismo problema y los combiné en el inicial. Si el problema es el mismo, por favor continúa publicando tus consultas en el primer hilo para evitar resultados redundantes en las búsquedas.

Saludos y gracias por tu colaboración
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #53  
Antiguo 16-06-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Ya me estaba liando con tanto mensaje que tocaba el mismo tema
Cita:
Empezado por ecfisa Ver Mensaje
Hola shoulder.
Existían tres hilos referentes al mismo problema y los combiné en el inicial. Si el problema es el mismo, por favor continúa publicando tus consultas en el primer hilo para evitar resultados redundantes en las búsquedas.
Saludos y gracias por tu colaboración
Responder Con Cita
  #54  
Antiguo 16-06-2015
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Poder: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
shoulder,

Cita:
Empezado por ecfisa
...Existían tres hilos referentes al mismo problema y los combiné en el inicial...


Pregunto : ¿Has probado todas las opciones propuestas que se encuentran distribuidas entre todos los mensajes de este hilo?

Si : Te sugiero que acuerdes con un usuario (El que mas te llame por el evento en cuestión) que te avise antes de cada proceso de firma digital y verifiques de forma presencial que puede estar provocando que el mensaje modal sea minimizado.

No: Revisa las opciones propuestas

Espero sea útil

Nelson.
Responder Con Cita
  #55  
Antiguo 16-06-2015
shoulder shoulder is offline
Miembro
 
Registrado: abr 2008
Posts: 441
Poder: 17
shoulder Va por buen camino
Mensaje minimizado

Hola por eso habia dicho antes que el tema se habia hablado, lo probe con todo y solucione parcialmente con la forma :

Código Delphi [-]
 vHandle := FindWindow(nil, 'Scanear');
           if vHandle <> 0 then
           SetForegroundWindow (vHandle);

cuando otro programa delphi (en este caso hice un programa que scanea) y con esas sentencias no me aparece minimizado sino al frente.-

El tema es cuando es un mensaje ejemplo :

Código Delphi [-]
Msg := 'Archivo Cambiado';
  MessageBox(Handle, PChar(Msg), PChar('Error'), MB_OK + MB_ICONERROR);

o con messagebox, en forma aleatoria aparece minimizado el mensaje o es mas una vez me paso que ni aparecio el mensaje. usando el Handle puedo forzar un mensaje para que aparezca adelante?.
Responder Con Cita
  #56  
Antiguo 17-06-2015
shoulder shoulder is offline
Miembro
 
Registrado: abr 2008
Posts: 441
Poder: 17
shoulder Va por buen camino
showmessage minimizado

Me parece que lo solucione de esta forma, por ahora no me han llamado:

Código Delphi [-]
Msg := 'Existe un Documento Activo en el View PDF';
MessageBox(Handle, PChar(Msg), PChar('Information'), MB_OK + MB_ICONINFORMATION);


vHandle := FindWindow(nil, 'Information');
           if vHandle <> 0 then
           SetForegroundWindow (vHandle);
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
cronometro minimizado kurono Varios 3 22-01-2009 06:42:14
Arranque minimizado Cecilio Varios 2 25-06-2008 11:54:59
Minimizado de Formularios Michel Varios 0 16-08-2003 00:00:16
Restaurar un report minimizado MANU1102 Impresión 4 04-08-2003 14:41:27


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


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