Power Builder - Detectar Maximizacion de Aplicaciones

 
Vista:
sin imagen de perfil

Detectar Maximizacion de Aplicaciones

Publicado por Andres (331 intervenciones) el 23/11/2006 21:24:34
Amigos foristas

Tengo desarrolado varios sistemas administrativos y productivos, los tengo instalados en varios clientes. Tengo un cliente que me esta entregando la administracion de su departamento de computacion y me pide un informe mensual del comportamiento de todos sus usuarios (+- 30)

No se si PB existen funciones que capturen cada maximizacion o detecte que este trabajando alguien en distintas aplicaciones como word, excel, mss, internet, juegos, etc., para poder detectar el tiempo efectivo trabajando en cada una de estas aplicaciones.

Yo meimagino que puede ser un desarrollo en PB y que al partir el computador haga partir esta herramienta y la deje en la barra de tareas.

Atte

Andres

PD. Cualquier observacion o consejos por favor haganlos reales
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:Detectar Maximizacion de Aplicaciones

Publicado por amilcar (407 intervenciones) el 24/11/2006 15:03:58
hola, no se si te sirva, pero podrias instalar un keylogger en cada pc el cual capturaria todo lo q el usuario hace, programas q habre, tiempo q los usa, en fin, todo lo q suceda en esa pc y podrias configurar este soft para q te envie un mail a tu casilla con todos los datos a los efectos de evitar recorrer cada pc.
obviamente q todo eso el usuario no lo veria, seria una accion de hacking q estarias haciendo, pero como tu eres el responsable del area de sistemas me parece q puede ser una opcion valida. q no se entienda esto como una accion de espiar a los empleados por favor..
bueno es solo una idea.
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:Detectar Maximizacion de Aplicaciones

Publicado por Jorge E (37 intervenciones) el 24/11/2006 17:05:49
Quizás esto te pueda ayudar en algo.
el siguiente código obtiene las tareas que estan en la barra de tareas de window sea maximizada o minimizada. obtiene el título de la ventana.
facil tu puedes crear una funcion para que detecte automaticamente las tareas que se estan ejecutando y que grave cada cierto tiempo incluido en nombre de la pc para que obtengas tu reporte de las tareas ejecutadas en cada pc.

te recomiento que crees un custom object. para mi caso se llama n_servicerunning

//en local external function del objeto
Function uint GetWindow (long handle,uint relationship) Library "USER32.DLL"
Function boolean IsWindowVisible (long handle) Library "USER32.DLL"
Function int GetWindowTextA(long handle, ref string wintext, int length) Library "USER32.DLL"

crea las siguientes funciones en el objecto no visual

uf_getwindow(long aui_handle, unsignedinteger aui_relationship) returns unsignedinteger
//script
Return GetWindow(aui_handle,aui_relationship)
uf_getwindow(long aui_handle, ref string as_text, integer ai_max) returns integer
// script
Return GetWindowTextA (aui_handle,as_text,ai_max)
uf_iswindowvisible (long aui_handle) returns boolean
// script
Return IsWindowVisible(aui_handle)

// en global variables
n_servicerunning gnv_running
// ahora en una ventana inserta un n commandbutton y un listbox
// en el scritp del botton
uint lui_hwnd, &
lui_hwndnext
string ls_ptr

gnv_running = create using "n_servicerunning"
lb_1.SetRedraw (false)
lb_1.Reset()

ls_ptr = space (40)

lui_hwnd = Handle (parent)

// agrega cada una de las tareas al listbox
lui_hwndnext = gnv_running.uf_GetWindow (lui_hwnd, 0)

Do While lui_hwndnext > 0
if (lui_hwndnext <> lui_hwnd) and gnv_running.uf_IsWindowVisible (lui_hwndnext) &
and (gnv_running.uf_GetWindow (lui_hwndNext, 4) = 0 ) then
if gnv_running.uf_GetWindowText (lui_hwndnext, ls_ptr, 40) > 0 then
lb_1.AddItem (ls_ptr)
end if
end if
lui_hwndnext = gnv_running.uf_GetWindow (lui_hwndnext, 2)
Loop
lb_1.SetRedraw (true)
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
sin imagen de perfil

RE:Detectar Maximizacion de Aplicaciones

Publicado por Andres (331 intervenciones) el 27/11/2006 14:20:08
Jorge

Muchas gracias por tu colaboracion.

Escribi el codigo que tu me indicas y tengo unas dudas

Al clickear el comanbutton me captura solo numero y nombres de ventanas, Eso funciona asi o esta ok.

Atte Andres
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