Delphi Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Delphi Examples

Bounced Mail
Bz2
Character Encoding
CSV
Digital Certificates
Digital Signatures
DH Key Exchange
DSA
Email
Email Object
FTP
HTML-to-XML
HTTP
IMAP
Encryption
MHT / HTML Email
POP3
RSA
S/MIME
SMTP
Socket
Spider
SFTP
SSH
SSH Key
SSH Tunnel
String
Tar
Upload
XML
XMP
Zip Compression

More Examples...
Byte Array
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate

Unreleased...
Bzip2
LZW
Icon

Type Conversion

 

Article: Understanding COM References in Delphi

Asynchronous HTTPS Upload

Demonstrates how to do an HTTPS upload asynchronously in a background thread. The Chilkat Upload software is freeware and may be used in both commercial and non-commercial applications and websites.

Download Chilkat Upload ActiveX (freeware)

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

...

procedure TForm1.Button1Click(Sender: TObject);
var
upload: TChilkatUpload;
success: Integer;

begin
upload := TChilkatUpload.Create(Self);

//  Specify the page (ASP, ASP.NET, Perl, Python, Ruby, CGI, etc)
//  that will process the HTTP Upload.
//  You must change these values to your hostname/path.
upload.Hostname := 'www.yourwebserver123.com';
upload.Path := '/receiveUpload.asp';

//  To upload via HTTPS, you only need to set the port
//  and "Ssl" property.  All other programming remains the same:
upload.Ssl := 1;
upload.Port := 443;

//  Add one or more files to be uploaded.
upload.AddFileReference('file1','dude.gif');
upload.AddFileReference('file2','pigs.xml');
upload.AddFileReference('file3','sample.doc');

//  Begin the HTTPS upload in a background thread:
success := upload.BeginUpload();
if (success <> 1) then
  begin
    ShowMessage(upload.LastErrorText);
  end
else
  begin
    ShowMessage('Files uploaded!');
  end;

//  Wait for the upload to finish.
//  Print the progress as we wait...
while (upload.UploadInProgress = 1) do
  begin
    //  We can abort the upload at any point by calling:
    //  upload.AbortUpload();

    //  Display the percentage complete and the number of bytes uploaded so far..
    //  The total upload size will become set after the upload begins:
    Memo1.Lines.Add(IntToStr(upload.PercentUploaded)
         + '% ' + IntToStr(upload.NumBytesSent)
         + '/' + IntToStr(upload.TotalUploadSize));

    //  Sleep 2/10ths of a second.
    upload.SleepMs(200);

  end;

//  Did the upload succeed?
if (upload.UploadSuccess = 1) then
  begin
    ShowMessage('Files uploaded!');
  end
else
  begin
    ShowMessage(upload.LastErrorText);
  end;
end;

 

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

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

Mail Component · .NET Email Component · XML Parser