desarrollosconsejeria/aulalinex-ltsp-alumno/4.2-2/serveralumnolinex-ltsp/serveralumnolinexltsp.lpr @ master
23a384b9 | Elisa | program serveralumnolinexltsp;
|
|
{$mode objfpc}{$H+}
|
|||
uses
|
|||
cthreads,
|
|||
Classes, SysUtils, CustApp, globales, demonio, clservidor, clcomandosroot;
|
|||
type
|
|||
{ TMyApplication }
|
|||
TMyApplication = class(TCustomApplication)
|
|||
protected
|
|||
procedure DoRun; override;
|
|||
public
|
|||
constructor Create(TheOwner: TComponent); override;
|
|||
destructor Destroy; override;
|
|||
end;
|
|||
{ TMyApplication }
|
|||
procedure TMyApplication.DoRun;
|
|||
const
|
|||
ESTADOUSUARIO='who -u | grep %s|grep -v -c grep';
|
|||
var
|
|||
EstadoUsu:String;
|
|||
begin
|
|||
// quick check parameters
|
|||
if g_maquina_profe then
|
|||
begin
|
|||
Terminate;
|
|||
exit
|
|||
end;
|
|||
if (g_contador_estado>200) then
|
|||
begin
|
|||
EstadoUsu:=Format(ESTADOUSUARIO,[miservidor.UsuarioAlumno]);
|
|||
if Trim(HallarDatos(EstadoUsu))='0' then
|
|||
begin
|
|||
Ejecutar1('killall x11vnc >/dev/null 2&>1');
|
|||
Terminate;
|
|||
exit;
|
|||
end;
|
|||
g_contador_estado:=0;
|
|||
end;
|
|||
inc(g_contador_estado);
|
|||
IF g_finalizar then terminate;
|
|||
{ add your program here }
|
|||
// stop program loop
|
|||
sleep(50);
|
|||
//Terminate;
|
|||
end;
|
|||
constructor TMyApplication.Create(TheOwner: TComponent);
|
|||
begin
|
|||
inherited Create(TheOwner);
|
|||
StopOnException:=True;
|
|||
end;
|
|||
destructor TMyApplication.Destroy;
|
|||
begin
|
|||
inherited Destroy;
|
|||
end;
|
|||
var
|
|||
Application: TMyApplication;
|
|||
{$IFDEF WINDOWS}{$R serveralumnolinex.rc}{$ENDIF}
|
|||
begin
|
|||
Application:=TMyApplication.Create(nil);
|
|||
Application.Run;
|
|||
Application.Free;
|
|||
end.
|