Power Builder - Como terminar un programa de windows

 
Vista:

Como terminar un programa de windows

Publicado por Julio Jungbluth (13 intervenciones) el 25/02/2009 17:15:15
Hola, gracias por su apoyo.

Quisiera saber como puede terminar un programa que se ejecuta con el comando run desde un aplicacion de PB.

Ejemplo.

Al abrir una ventana quisiera que se ejecute la calculadora run('calc.exe'), pero al cerrar la ventana me gustaria que tambien se cierre la calculadora.

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Como terminar un programa de windows

Publicado por Jorge (900 intervenciones) el 25/02/2009 18:45:45
Hola
Si puedes

Declara estas dos APIS
Si usas PB anterior al 10 debes sacar desde el Alias inclusive

FUNCTION ULong FindWindowA(ULong classname, String windowname) LIBRARY "user32.dll" ALIAS FOR "FindWindowA;Ansi"
FUNCTION boolean PostMessageA(ulong hwndle,UINT wmsg,ulong wParam,ulong lParam) Library "User32.dll" ALIAS FOR "PostMessageA;Ansi"


Scrip en el evento que desees

Ulong lul_handle, lul_class
String ls_name

// El valor hexadecimal de wm_quit es 0x0012. Convertido a valor decimal es 18.
UInt lui_quit = 18

// Pone la Clase a NULL. Esto no es obligatorio, puedes pasarle 0 también a la función FindWindowA().
SetNull(lul_class)

// Este es el código de la ventana. Por ejemplo la calculadora de Windows
ls_name = "Calculadora" // Español
//ls_name = "Calculator" // Ingles

// Usa la llamada API para obtener el puntero de la ventana si la aplicación está en ejecución.
lul_handle = FindWindowA(lul_class, ls_name)

IF lul_handle > 0 THEN // Si se encuentra el puntero de la ventana se muestra el mensaje wm_quit
PostMessageA(lul_handle, lui_quit, 0, 0);
return
Else
MessageBox("Aviso", "La aplicación no está en ejecución. !")
END IF

Saludos desde Argentina
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como terminar un programa de windows

Publicado por Julio Jungbluth (13 intervenciones) el 25/02/2009 21:07:07
Ya utilice esto pero esta sentencia lul_handle = FindWindowA(lul_class, ls_name) , me sale cero(0).

Tambien probe con los pfc pero igual.

Que puedo esta haciendo mal??

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar