License.pas
上传用户:dh8233980
上传日期:2014-10-16
资源大小:1015k
文件大小:10k
- unit License;
- (******************************************************************************)
- (* *)
- (* Hermes License Dialog Window *)
- (* Part of Hermes SMTP/POP3 Server. *)
- (* Copyright(C) 2000 by Alexander J. Fanti, All Rights Reserver Worldwide. *)
- (* *)
- (* Created January 20, 2000 by Alexander J. Fanti. See License.txt *)
- (* *)
- (* Used by: About *)
- (* *)
- (* Description: This is a license dialog window to display the program's *)
- (* license information. *)
- (* *)
- (* Revisions: 1/21/2000 AJF Commented *)
- (* *)
- (******************************************************************************)
- interface
- uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
- StdCtrls, Buttons, ExtCtrls, ComCtrls;
- type
- TfrmLicense = class(TForm)
- pnlButtons: TPanel;
- btnOK: TBitBtn;
- btnPrint: TButton;
- btnSave: TButton;
- SaveDialog1: TSaveDialog;
- reLicense: TRichEdit;
- procedure pnlButtonsResize(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- procedure btnSaveClick(Sender: TObject);
- procedure btnPrintClick(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- frmLicense: TfrmLicense;
- implementation
- {$R *.DFM}
- procedure TfrmLicense.FormCreate(Sender: TObject);
- begin
- // I will clear the display
- reLicense.Clear;
- // and insert the License text here!
- // I have to do this because I've noticed that sometimes Delphi will
- // "lose" text in a memo or richedit control if it's added at design
- // time. I want to ensure that the license is never lost.
- reLicense.Lines.Add('The Hermes SMTP/POP3 Mail Server License');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('Copyright (C) 2000 by Alexander J. Fanti');
- reLicense.Lines.Add('All Rights Reserved Worldwide.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('For more information visit www.impchat.com');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('This software is NOT waranteed at all.');
- reLicense.Lines.Add('If it doesn''t work for you... sorry.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('Here''s the basic deal for those of you who don''t ');
- reLicense.Lines.Add('want to read:');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('You can use this software to save yourself money...');
- reLicense.Lines.Add('But not to make yourself money.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('Here''s what you can do...');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('1) You can use this software for education purposes.');
- reLicense.Lines.Add(' Learn how servers work, learn how SMTP and POP3 ');
- reLicense.Lines.Add(' work, learn how DNS works, learn how OOP works, ');
- reLicense.Lines.Add(' learn how Delphi works, and lots of other neat ');
- reLicense.Lines.Add(' stuff...');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('2) You can use this software to save yourself money.');
- reLicense.Lines.Add(' You can use it instead of buying a mail server from');
- reLicense.Lines.Add(' some company.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('3) Give this software to anyone you want.');
- reLicense.Lines.Add(' You do have my permission to distribute this ');
- reLicense.Lines.Add(' software via CD-ROM archive or FTP/HTTP, provided ');
- reLicense.Lines.Add(' you adhere to the rules of the license.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('Here''s what you CAN''T do...');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('1) YOU MAY NOT: Remove my name and copyright from any ');
- reLicense.Lines.Add(' part of this software. My name and copyright MUST ');
- reLicense.Lines.Add(' remain attached to all parts of this software. ');
- reLicense.Lines.Add(' Further, you may not distribute parts of this ');
- reLicense.Lines.Add(' software. This software must be distributed in ');
- reLicense.Lines.Add(' the complete form I have provided or not at all.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('2) YOU MAY NOT: Sell this software, or parts of this ');
- reLicense.Lines.Add(' software. You may charge a copy or distribution ');
- reLicense.Lines.Add(' fee of no more than $3.00, but you must indicate ');
- reLicense.Lines.Add(' to the seller that they are NOT buying this ');
- reLicense.Lines.Add(' software, but a copying fee, and you must tell them');
- reLicense.Lines.Add(' they can get this software freely from');
- reLicense.Lines.Add(' http://www.impchat.com');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('3) YOU MAY NOT distribute this software as part of ');
- reLicense.Lines.Add(' your own product. For instance, if you are an ');
- reLicense.Lines.Add(' ISP, you may not give this software to your ');
- reLicense.Lines.Add(' customers as part of their purchase of services ');
- reLicense.Lines.Add(' from you. You may tell them where to download ');
- reLicense.Lines.Add(' this software, and you may run a public FTP or ');
- reLicense.Lines.Add(' HTTP server where you allow downloading of this ');
- reLicense.Lines.Add(' software to the public and your customers, but if ');
- reLicense.Lines.Add(' you want to give them a copy as part of an ');
- reLicense.Lines.Add(' exchange of goods or services, you must get my ');
- reLicense.Lines.Add(' permission to do so.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('4) YOU MAY NOT represent this software as your own. ');
- reLicense.Lines.Add(' It is mine. I created it. I own it, and I''m ');
- reLicense.Lines.Add(' letting you use it. It is not yours. Do not tell ');
- reLicense.Lines.Add(' people that it is yours.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('5) YOU MAY NOT use all or any part of this software ');
- reLicense.Lines.Add(' in a commercial product or project. Don''t even ');
- reLicense.Lines.Add(' think about it.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('This software is freeware.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('This means that you can use it on any number of ');
- reLicense.Lines.Add('computers, for any number of users, for as long as ');
- reLicense.Lines.Add('you want.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('You may distribute this software to anyone via any ');
- reLicense.Lines.Add('means provided the License terms are met. These ');
- reLicense.Lines.Add('include, but are not limited to:');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('1) My copyright remains in the program, source code ');
- reLicense.Lines.Add(' and all associated files.');
- reLicense.Lines.Add('2) All files are distributed together in unaltered ');
- reLicense.Lines.Add(' form.');
- reLicense.Lines.Add('3) You may not represent this software as your own.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('This software is also open source.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('This means I have provided the source code to the ');
- reLicense.Lines.Add('software for people to examine. I am doing this ');
- reLicense.Lines.Add('to promote the finding and fixing of bugs in the ');
- reLicense.Lines.Add('program, and to promote participation in program ');
- reLicense.Lines.Add('development. I am retaining ALL rights to it. I ');
- reLicense.Lines.Add('still own it, even though I''m letting you see it. ');
- reLicense.Lines.Add('You may read it, copy it, modify it and take it ');
- reLicense.Lines.Add('apart provided the following conditions are met:');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('1) My copyright remains on all parts of the software.');
- reLicense.Lines.Add('2) You may NOT derive any software from this software ');
- reLicense.Lines.Add(' NOR can you use any part of this software in any ');
- reLicense.Lines.Add(' other software.');
- reLicense.Lines.Add('3) You may NOT distribute any modifications of this ');
- reLicense.Lines.Add(' software. I will be the only source of ');
- reLicense.Lines.Add(' modification to this software. If you have found');
- reLicense.Lines.Add(' a bug, fixed a bug, or want enhancements or other ');
- reLicense.Lines.Add(' modifications, you may send me information about ');
- reLicense.Lines.Add(' them. If you want to make custom modifications ');
- reLicense.Lines.Add(' for your personal use, you must write me for ');
- reLicense.Lines.Add(' permission.');
- reLicense.Lines.Add('');
- reLicense.Lines.Add('Note: the ML version is NOT open-source, only Freeware');
- reLicense.Lines.Add(' The non-ML version IS open-source.');
- reLicense.Lines.Add('');
- end;
- procedure TfrmLicense.pnlButtonsResize(Sender: TObject);
- begin
- // when the user re-sizes the window to get a better view, keep the
- // OK button looking good... not great, but good enough.
- btnOK.Left := pnlButtons.Width - btnOK.Width - 12;
- end;
- procedure TfrmLicense.btnSaveClick(Sender: TObject);
- begin
- // Let the user save the license to a file for later use or printing
- if SaveDialog1.Execute then reLicense.Lines.SaveToFile(SaveDialog1.Filename);
- end;
- procedure TfrmLicense.btnPrintClick(Sender: TObject);
- begin
- // Print the license to the default printer in the richedit's crappy way...
- reLicense.Print('Hermes SMTP/POP3 Server License');
- end;
- end.