Gracias al colega Jose Luis Parajon, se me ha abierto un nuevo dolor de cabeza Si tenemos una ventana principal y por ejemplo estamos en una segunda ventana o dialogo y el usuario vuelve a ejecutar la aplicacion, q ocurre?
Con la funcion del foro StillRun() podemos controlar si la aplicacion, mas bien, la ventana principal, esta funcionando, y con dicha funcion ejecutamos la funcion SetForegrounWindow() para pasarla a primer plano, perooooo, realmente ponemos en un primer plano la ventana principal y NO la secundaria.
- Code: Select all Expand view RUN
HB_FUNC (STILLRUN)
{
HWND hWnd;
BOOL lRet = FALSE;
hWnd = FindWindow (NULL,L"SV Pedidos" );
if (hWnd)
{
SetForegroundWindow ( hWnd );
lRet = TRUE;
}
hb_retl (lRet);
}
Hasta hoy, creo q la mejor solucion es mirar si la aplicacion ya esta ejecutandose, mostrar un simple mensaje de 'aplicacion ejecutandose', y q el usuario espabile cerrandose sus ventanitas.
Si alguien se encuentra con este problema y tiene una mejor solucion que quiera compartir, encantado
Saludos.
C.