Delphi Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Delphi Examples

Bounced Mail
Character Encoding
Digital Certificates
Digital Signatures
Email
FTP
HTML-to-XML
HTTP
IMAP
Encryption
MHT / HTML Email
RSA Encryption
S/MIME
Socket
Spider
String
Tar
Upload
XML
XMP
Zip Compression

More Examples...
Byte Array
Email Object
POP3
SMTP
RSS
Atom
Self-Extractor

Unreleased...
Service
PPMD
Deflate
Bzip2
LZW
Bz2
DH Key Exchange
DSA
Icon

Type Conversion

 

Article: Understanding COM References in Delphi

Create a Self-Extracting Executable for Win98/NT4

Download Chilkat Zip ActiveX

How to create a self-extracting EXE that will run on Windows98/NT4.

The WriteExe method will create a self-extracting EXE that supports all languages. It can handle filenames in any language, as well as display customized titles and captions in any language. Unfortunately, it is not compatible with Windows 98 and NT4 for this reason. It is possible to create self-extracting EXEs that run on all systems from Win95/98/NT4 and up, including Vista, by calling WriteExe2, but the resulting EXE is not Unicode capable (it can only display ANSI strings in the EXE's user interface).

uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, StdCtrls,
    ChilkatZip2Lib_TLB,
    OleCtrls;

...

procedure TForm1.Button1Click(Sender: TObject);
var
zip: TChilkatZip2;
success: Integer;
recurse: Integer;

begin
zip := TChilkatZip2.Create(Self);

//  Any string unlocks the component for the 1st 30-days.
success := zip.UnlockComponent('Anything for 30-day trial');
if (success <> 1) then
  begin
    ShowMessage(zip.LastErrorText);

  end;

//  Initialize the zip object.  Because we're creating
//  a self-extracting EXE in this example, the filename
//  passed to NewZip will never actually be created.
success := zip.NewZip('notUsed.zip');
if (success <> 1) then
  begin
    ShowMessage(zip.LastErrorText);

  end;

//  Append a directory tree.  The AppendFiles does
//  not read the file contents or append them to the zip
//  object in memory.  It simply appends references
//  to the files so that when WriteExe (or WriteZipAndClose,
//  or WriteZip, etc.) is called, the files are compressed
//  and added to the archive.
recurse := 1;
zip.AppendFiles('c:/temp/a/*',recurse);

//  The WriteExe2 method allows you to use an alternate
//  self-extract program.  (The self-extracting EXE is an
//  executable with data appended to it.  When the EXE runs,
//  it locates the data and extracts (unzips) the contents.)

//  You may download a Win98 compatible program at this URL:
//  http://www.chilkatsoft.com/download/SaPayload98.zip.
//  Unzip it to get SaPayload98.exe
//  (It is called a payload because the Chilkat libs and DLLs
//  contain the default payload (Unicode compable) within the
//  .lib or DLL itself.)

//  The 1st argument to WriteExe2 is the payload file (i.e. the
//  self-extractor program).  The 2nd argument is the output file,
//  the remaining arguments control encryption.
success := zip.WriteExe2('SaPayload98.exe','mySfx.exe',0,0,'');
if (success <> 1) then
  begin
    ShowMessage(zip.LastErrorText);

  end;

ShowMessage('EXE Created!');
end;

 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2007 Chilkat Software, Inc. All Rights Reserved.

Mail Component · .NET Email Component · XML Parser