Page 1 of 1

Saber si la aplicacion ya esta corriendo

PostPosted: Fri Apr 21, 2006 12:40 pm
by Jorge Jaurena
Hoal a todos.

Estoy tratando de determinar si mi aplicacion ya esta corriendo y utilizo la funcion GetTasks(), pero noto que siempre detecta una sola vez la aplicacion a pesar de que la ejecuto varias veces.

Desde ya, muchas gracias.
Jorge Jaurena

p.d. Si alguien sabe como hacer para que funcione el SET DEFAULT TO cuando uso ADS local, me haria un gran favor.

PostPosted: Fri Apr 21, 2006 2:33 pm
by Rafael Clemente
Yo lo hago así:

IF IsExeRunning(cFileName(HB_ARGV(0)))
MsgInfo("Aplicación en marcha")
ENDIF

Saludos,
Rafael

PostPosted: Sun Apr 23, 2006 10:56 pm
by Raymundo Islas M.
Gracias Rafael

Estaba tambien peleando con el GetTask() y no me funcionaba bien, tu repuesta me cayo como caida del cielo :D :D

Saludos

PostPosted: Mon Apr 24, 2006 12:21 pm
by Jorge Jaurena
Gracias por la respuesta. De todas maneras se me ocurrio modificar la funcion GetTasks() y asi obtengo las aplicaciones corriendo en el numero en que se repitan. Aca va mi GetTasks()

//----------------------------------------------------------------------------//
Function GetTask()
local hWnd := GetWindow( GetActiveWindow(), GHW_HWNDFIRST )
local aTasks := {}
local cTask

while hWnd != 0
#ifdef __CLIPPER__
cTask = GetModuleFileName( GetWindowWord( hWnd, GWW_HINSTANCE ) )
#else
cTask = GetWindowText( hWnd ) // The above does now work :-(
#endif

AAdd( aTasks, cTask )
hWnd = GetWindow( hWnd, GHW_HWNDNEXT )
end
Return aTasks
//----------------------------------------------------------------------------//