PDA

Ver la Versión Completa : Cerrar una aplicacion remota


Javier_A
28-06-2004, 09:57:37
Hola a tod@s, me ha surgido un problemilla, a ver si me podeis ayudar.
Resulta que los titulos de las aplicaciones van acompañados del archivo con el que estan trabajando. Ej: Carta a clientes.doc - Microsoft Word.
El problema es que si quiero cerrar Microsoft word con la siguiente expresion:

PostMessage(FindWindow(Nil, Pchar('Microsoft Word')), WM_QUIT, 0, 0);

No me va a funcionar pues tendria que haber escrito:

PostMessage(FindWindow(Nil, Pchar('carta a clientes.doc - Microsoft Word')), WM_QUIT, 0, 0);

Y yo no conozco con que fichero va a estar trabajando el word.

¿ Hay alguna manera de cerrar la aplicacion sin tener que detallar que archivo que tiene abierto la aplicacion ?

Muchas gracias y un saludo a tod@s

Javier_A
28-06-2004, 13:29:36
Quizas el enfoque de la pregunta no se sea el correcto, ¿ puedo leer los nombres de las aplicaciones que estan abiertas con FindWindow ?
Un saludo y gracias de nuevo

delphi.com.ar
28-06-2004, 15:39:01
Podés buscarlo por el nombre de la clase, en lugar del título de la ventana:

FindWindow('opusapp', nil)

PD: Tené en cuenta que puede haber mas de una instancia de Word abierta al mismo tiempo...

Saludos!

Javier_A
28-06-2004, 18:04:16
Es lo que necesito pero en mi programa lo que necesito es detectar un programa de diseño ( una version de pruebas de mdesing ), ¿ como podría averiguar a la clase a la que pertenece ?

Muchas gracias y ¡¡ Viva Maradona !! :D

delphi.com.ar
28-06-2004, 18:07:49
:D...

Delphi te instala el WinSight donde puedes explorar todas las ventanas activas.

Saludos!

Javier_A
28-06-2004, 18:12:17
Muchas gracias y un saludo