Hermes.dpr
上传用户:dh8233980
上传日期:2014-10-16
资源大小:1015k
文件大小:5k
- program Hermes;
- (******************************************************************************)
- (* *)
- (* Hermes Project *)
- (* Part of Hermes SMTP/POP3 Server. *)
- (* Copyright(C) 2000 by Alexander J. Fanti, All Rights Reserver Worldwide. *)
- (* *)
- (* Created January 10, 2000 by Alexander J. Fanti. See License.txt *)
- (* *)
- (* Hermes is a SMTP/POP3 EMail server. *)
- (* *)
- (* Please reference the following RFCs: *)
- (* RFC 821 - Simple Mail Transfer Protocol *)
- (* RFC 974 - Mail Routing and the Domain System *)
- (* RFC 1725 - Post Office Protocol - Version 3 *)
- (* RFC 822 - Standard for the Format of ARPA Internet Text Messages *)
- (* RFC 1321 - The MD5 Message-Digest Algorithm *)
- (* *)
- (* First Public Release: February 1, 2000 version 1.1.0.1 *)
- (* *)
- (******************************************************************************)
- uses
- Forms,
- Windows,
- Dialogs,
- Main in 'Main.pas' {frmMain},
- About in 'About.pas' {frmAbout},
- UtilU1 in 'UtilU1.pas',
- License in 'License.pas' {frmLicense},
- Pop3Server in 'Pop3Server.pas',
- Settings_Pop3Server in 'Settings_Pop3Server.pas' {frmSettings_Pop3Server},
- DataU1 in 'DataU1.pas',
- ManageUsers in 'ManageUsers.pas' {frmManageUsers},
- AddEditUser in 'AddEditUser.pas' {frmAddEditUser},
- SmtpServer in 'SmtpServer.pas',
- Settings_SmtpServer in 'Settings_SmtpServer.pas' {frmSettings_SmtpServer},
- SmtpAgent in 'SmtpAgent.pas',
- Settings_General in 'Settings_General.pas' {frmSettings_General},
- ManageMailLists in 'ManageMailLists.pas' {frmManageMailLists},
- AddEditMailList in 'AddEditMailList.pas' {frmAddEditMailList},
- ManageAliases in 'ManageAliases.pas' {frmManageAliases},
- AddEditAlias in 'AddEditAlias.pas' {frmAddEditAlias},
- ChooseUser in 'ChooseUser.pas' {frmChooseUser},
- MailRouting in 'MailRouting.pas',
- Splash in 'Splash.pas' {frmSplash},
- Settings_SmtpAgent in 'Settings_SmtpAgent.pas' {frmSettings_SmtpAgent},
- FirstTime in 'FirstTime.pas' {frmFirstTime},
- ViewMailListArchive in 'ViewMailListArchive.pas' {frmViewMailListArchive},
- CloseQuery in 'CloseQuery.pas' {frmCloseQuery},
- Settings_SmtpServerAccessControl in 'Settings_SmtpServerAccessControl.pas' {frmSettings_SmtpServerAccessControl};
- {$R *.RES}
- var
- HermesMutex : integer;
- begin
- // Create a Mutex to prevent multiple copies from being run...
- HermesMutex := CreateMutex(nil, True, 'Hermes SMTP/POP3 Server');
- if GetLastError = ERROR_ALREADY_EXISTS then begin
- {Send all windows our custom message - only our other}
- {instance will recognise it, and restore itself... then quit}
- SendMessage(HWND_BROADCAST, RegisterWindowMessage('HermesRestore'), 0, 0);
- Halt(0);
- end;
- Application.Initialize;
- frmSplash := TfrmSplash.Create(Application); // Create Splash
- frmSplash.Show; // Show Splash
- frmSplash.Refresh;
- Application.Title := 'Hermes SMTP/POP3 Server';
- Application.ShowMainForm := False;
- Application.CreateForm(TfrmMain, frmMain);
- Application.CreateForm(TfrmAbout, frmAbout);
- Application.CreateForm(TfrmLicense, frmLicense);
- Application.CreateForm(TfrmSettings_Pop3Server, frmSettings_Pop3Server);
- Application.CreateForm(TfrmManageUsers, frmManageUsers);
- Application.CreateForm(TfrmAddEditUser, frmAddEditUser);
- Application.CreateForm(TfrmSettings_SmtpServer, frmSettings_SmtpServer);
- Application.CreateForm(TfrmSettings_General, frmSettings_General);
- Application.CreateForm(TfrmManageMailLists, frmManageMailLists);
- Application.CreateForm(TfrmAddEditMailList, frmAddEditMailList);
- Application.CreateForm(TfrmManageAliases, frmManageAliases);
- Application.CreateForm(TfrmAddEditAlias, frmAddEditAlias);
- Application.CreateForm(TfrmChooseUser, frmChooseUser);
- Application.CreateForm(TfrmSettings_SmtpAgent, frmSettings_SmtpAgent);
- Application.CreateForm(TfrmViewMailListArchive, frmViewMailListArchive);
- Application.CreateForm(TfrmCloseQuery, frmCloseQuery);
- Application.CreateForm(TfrmSettings_SmtpServerAccessControl, frmSettings_SmtpServerAccessControl);
- frmSplash.Timer1.Enabled := True; // allow Splash to go away
- Application.Run;
- ReleaseMutex(HermesMutex);
- end.