C#
C#
HTTP Download with Progress Event Callbacks
See more HTTP Examples
Downloads a file via HTTP or HTTPS and uses event callbacks to monitor progress.Chilkat C# Downloads
// AbortCheck callback method.
private void http_OnAbortCheck(object sender, Chilkat.AbortCheckEventArgs args)
{
}
// PercentDone callback method.
private void http_OnPercentDone(object sender, Chilkat.PercentDoneEventArgs args)
{
int percentDone = args.PercentDone;
Debug.WriteLine("Percent Done: " + Convert.ToString(percentDone));
// Explicitly abort at 25% or greater.
// Remove this to allow for the HTTP download to run to completion.
if (percentDone > 25) {
args.Abort = true;
}
}
// ProgressInfo callback method.
private void http_OnProgressInfo(object sender, Chilkat.ProgressInfoEventArgs args)
{
string name = args.Name;
string value = args.Value;
Debug.WriteLine(name + ": " + value);
}
private void ChilkatExample()
{
bool success = false;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Chilkat.Http http = new Chilkat.Http();
http.OnAbortCheck += http_OnAbortCheck;
http.OnPercentDone += http_OnPercentDone;
http.OnProgressInfo += http_OnProgressInfo;
// Set a heartbeat in milliseconds
http.HeartbeatMs = 200;
// Download a file...
string localFilePath = "qa_output/Python-3.4.4.tar.xz";
success = http.Download("https://www.python.org/ftp/python/3.4.4/Python-3.4.4.tar.xz",localFilePath);
if (success == false) {
Debug.WriteLine(http.LastErrorText);
return;
}
Debug.WriteLine("OK!");
}