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
(C) Bandwidth Throttled Asynchronous HTTP UploadDemonstrates how to do an HTTP upload asynchronously in a background thread with limiting the rate to an approximate number of bytes/second. The only difference between this example and one without bandwidth throttling is that the BandwidthThrottleUp property is set.
#include <C_CkUpload.h> void ChilkatSample(void) { HCkUpload upload; BOOL success; upload = CkUpload_Create(); // Specify the page (ASP, ASP.NET, Perl, Python, Ruby, CGI, etc) // that will process the HTTP Upload. CkUpload_putHostname(upload,"www.mywebserver.com"); CkUpload_putPath(upload,"/receiveUpload.aspx"); // Add one or more files to be uploaded. CkUpload_AddFileReference(upload,"file1","dude.gif"); CkUpload_AddFileReference(upload,"file2","pigs.xml"); CkUpload_AddFileReference(upload,"file3","sample.doc"); // Set the BandwidthThrottleUp property to throttle to approx 64K/second CkUpload_putBandwidthThrottleUp(upload,65536); // Begin the HTTP upload in a background thread: success = CkUpload_BeginUpload(upload); if (success != TRUE) { printf("%s\n",CkUpload_lastErrorText(upload)); } else { printf("Upload started...\n"); } // Wait for the upload to finish. // Print the progress as we wait... while ((CkUpload_getUploadInProgress(upload) == TRUE)) { // 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: printf("%d% %d/%d\n",CkUpload_getPercentUploaded(upload),CkUpload_getNumBytesSent(upload),CkUpload_getTotalUploadSize(upload)); // Sleep 2/10ths of a second. CkUpload_SleepMs(upload,200); } // Did the upload succeed? if (CkUpload_getUploadSuccess(upload) == TRUE) { printf("Files uploaded!\n"); } else { printf("%s\n",CkUpload_lastErrorText(upload)); } CkUpload_Dispose(upload); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.