Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Detectar ventanas creadas con GetDesktopWindow

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Detectar ventanas creadas con GetDesktopWindow Responder citando

Hola compañeros, estoy realizando una opción de captura de los clientes de forma independiente, es decir, que cuando le de nuevo me abra una nueva ventana, me basé de la siguiente liga:
[url]
https://cppbuilder.es/viewtopic.php?t=8280&highlight=getdesktopwindow[/url]

Ahora cuando se cierre la sesión del usuario se deben cerrar estas ventanas que fueron creadas de la forma anterior.

¿ Alguien sabe como ?

Gracias por el apoyo
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Lo que necesitas saber es como detectar que se está cerrando la sesión? Si es así lo que tienes que hacer es interceptar los mensajes WM_QUERYENDSESSION y WM_ENDSESSION. En el siguiente post tienes un ejemplo:

https://cppbuilder.es/viewtopic.php?t=8574
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Gracias por la pronta respuesta _Leo, entiendo que la detección de estos mensajes es cuando se está cerrando la sesión de la computadora, lo que quiero es implementar una sesión dentro de mi aplicación, simulando que cuando el usuario entra en el programa se autentique para que se le habilite ciertas opciones y cuando de le un botón se cierre todas las ventanas creadas pero le permita volver a iniciar sesión, por eso quisiera cerrar todas las ventanas creadas en el programa.

Espero haberme explicado.

Saludos y gracias !!!
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Cuando cierras la ventana principal (la que ha creado todas las demás) no se cierran todas (o bien usando Application->Terminate()) ?
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

si se cierran _Leo, lo que intento hacer es que cuando empieze el programa todas las opciones estén deshabilitadas, el usuario tiene que dar click en el botón de iniciar sesión y todas las opciones se habilitan, despues creo ventanas con padre el desktop y después cuando pulse el usuario cerrar sesión para que se deshabilite todas las opciones, se cierren todas las ventanas hijas, pero el programa quede vivo para que se puede iniciar sesión otra persona.

Espero haberme explicado mejor :)
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Sigo sin enterarme bien de lo que te falta.. pero si lo que quieres es cerrar todas las ventanas de un tipo determinado.. Suponiendo que en "TForm2" es donde estas usando lo del "CreateParams" y quisieras cerrar todas las instancias de la misma, podrías hacerlo así:
Código:
for (int i = 0; i < Screen->FormCount; i++)
    if (Screen->Forms[i]->ClassNameIs("TForm2"))
        Screen->Forms[i]->Close();
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

_Leo,

era exactamente lo que buscaba, mil gracias como siempre !!!

:)
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.