Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Unicode C) HTTP Download with Progress Event CallbacksDownloads a file via HTTP or HTTPS and uses event callbacks to monitor progress.
#include <C_CkHttpW.h> BOOL http_AbortCheck() { return FALSE; } BOOL http_PercentDone(int percentDone) { wprintf(L"Percent Done: %d\n",percentDone); // Explicitly abort at 25% or greater. // Remove this to allow for the HTTP download to run to completion. if (percentDone > 25) { return TRUE; } return FALSE; } void http_ProgressInfo(const wchar_t *name, const wchar_t *value) { wprintf(L"%s: %s\n",name,value); } void ChilkatSample(void) { HCkHttpW http; BOOL (*fnhttpAbortCheck)() = http_AbortCheck; BOOL (*fnhttpPercentDone)(int percentDone) = http_PercentDone; void (*fnhttpProgressInfo)(const wchar_t *name, const wchar_t *value) = http_ProgressInfo; const wchar_t *localFilePath; BOOL success; // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. http = CkHttpW_Create(); CkHttpW_setAbortCheck(http, fnhttpAbortCheck); CkHttpW_setPercentDone(http, fnhttpPercentDone); CkHttpW_setProgressInfo(http, fnhttpProgressInfo); // Set a heartbeat in milliseconds CkHttpW_putHeartbeatMs(http,200); // Download a file... localFilePath = L"qa_output/Python-3.4.4.tar.xz"; success = CkHttpW_Download(http,L"https://www.python.org/ftp/python/3.4.4/Python-3.4.4.tar.xz",localFilePath); if (success != TRUE) { wprintf(L"%s\n",CkHttpW_lastErrorText(http)); CkHttpW_Dispose(http); return; } wprintf(L"OK!\n"); CkHttpW_Dispose(http); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.