Es una forma poco ortodoxa pero me funciona,
donde quieras que se reinicie tu aplicaci贸n,
1潞 llamas a un exe que va a volver a llamar a tu aplicaci贸n
2潞 te sales de la aplicaci贸n
Espero te sirva,
Saludos
.... tu codigo de tu aplicacion ...
Ejecuta("LlamaNuevoExe.EXE )
ErrorLevel(3)
PostQuitMessage(0)
__Quit()
.... fin
--- LlamaNuevoExe.EXE ---
// LLamaNuevoExe.prg s贸lo tiene una funci贸n y es llamar a tu aplicaci贸n.
function LlamaNuevoExe()
Ejecuta("TuAplicaci贸n.EXE")
Return nil
-- Function Ejecuta --
- Ejecutar Programas Externos *
FUNCTION Ejecuta(cEjecuta, lSeparate)
LOCAL hInstance
DEFAULT lSeparate TO .F.
IF IsWinNT()
IF lSeparate
hInstance := WinExec("cmd.exe /c start /SEPARATE "+cEjecuta ,0)
ELSE
hInstance := WinExec("cmd.exe /c start "+cEjecuta ,0)
ENDIF
ELSE
hInstance := WinExec("Start "+cEjecuta ,0)
ENDIF
RETURN hInstance