Contributor: SWAG SUPPORT TEAM
unit Unit1;
interface
uses
  SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  Forms, Dialogs, Menus;
type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
     procedure winmsg(var msg:tmsg;var handled:boolean);
     {This is what handles the messages}
     procedure DOWHATEVER;{procedure to do whatever}
  end;
var
  Form1: TForm1;
implementation
{$R *.DFM}
const ItemID=99;{the ID number for your menu item--can be anything}
procedure tform1.winmsg(var msg:tmsg;var handled:boolean);
begin
  if msg.message=wm_syscommand then{if the message is a system one...}
   if msg.wparam = ItemID then DOWHATEVER;{then check if its parameter
                                           is your Menu items ID,}
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
  application.onmessage:=winmsg;
  {tell your app that 'winmsg' is the application message handler}
  AppendMenu(GetSystemMenu(form1.handle,false),mf_separator,0,'');
  {Add a seperator bar to form1}
  
AppendMenu(GetSystemMenu(form1.handle,false),mf_byposition,ItemID,
  '&New Item');
{add your menu item to form1}
  
AppendMenu(GetSystemMenu(application.handle,false),mf_separator,0,'');
{Add a seperator bar to the application system menu(used when app 
 is minimized)}
  
AppendMenu(GetSystemMenu(application.handle,false),mf_byposition,
ItemID,'&New Item'
{add your menu itemto the application system menu(used when app is 
 minimized)}
{for more information on the AppendMenu and GetSystemMenu see online
 help}
end;
procdure TForm2.DOWHATEVER;
begin
 {add whatever you want to this procedure}
end;
end.