Einzelnen Beitrag anzeigen

paelesoft

Registriert seit: 3. Jul 2004
37 Beiträge
 
Delphi 7 Professional
 
#3

Re: Ereignis beim Shutdown plattformübergreifend

  Alt 30. Aug 2004, 23:48
Danke, Assarbat. Der Tip war (denke ich ) absolut richtig.
Habe aber noch das Problem, dass die App nicht wie gewünscht reagiert.
Das KILL -Signal lässt sich nicht umleiten (steht in der manpage) aber das
SIGTERM sollte gehen. Geht aber nicht! Oder fährt an der Stelle schon das Programm
runter und eine Messagebox wird unterdrückt??? Aber müsste es dann nicht wenigstens piepen?
Habe ich vielleicht "TermProcess" falsch deklariert oder eingebunden?
Könnte bitte jemand mal einen Blick drauf werfen?

Delphi-Quellcode:
unit Sig1;

interface

uses
  LibC,
  SysUtils, Types, Classes, Variants, QTypes, QGraphics, QControls, QForms,
  QDialogs, QStdCtrls;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }

  end;


procedure TermProcess(Signal : Integer); cdecl;

var
  Form1: TForm1;

implementation

{$R *.xfm}

var SaveSigHandler : TSignalHandler = nil;

procedure TermProcess;
begin
  Beep;
  Application.MessageBox('Terminate','Signal');
  if @SaveSigHandler <> nil then SaveSigHandler(Signal);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  SaveSigHandler:=signal(SIGTERM,TermProcess);
end;

end.
Gruß Erik
  Mit Zitat antworten Zitat