FoxPro Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript



Visual FoxPro 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
Self-Extractor

More Examples...
Email Object
POP3
SMTP
RSS
Atom
Byte Array
Service
PPMD
Deflate
DH Key Exchange
DSA

Unreleased...
Bzip2
LZW
Bz2
Icon

 

Non-Chilkat Links
Text and String Handling

Asynchronous FTP Upload

The Chilkat FTP component supports asynchronous uploads and downloads. This examples demonstrates doing an upload in a background thread. The upload is started by calling AsyncPutFileStart. While the upload is in progress, your program may do other tasks. You may periodically check the AsyncFinished property to determine when the transfer is finished. The example below provides the remainder of the details.

Download Chilkat FTP2 ActiveX

LOCAL loFtp
LOCAL lnSuccess
LOCAL lcLocalFilename
LOCAL lcRemoteFilename

loFtp = CreateObject('Chilkat.Ftp2')

* Any string unlocks the component for the 1st 30-days.
lnSuccess = loFtp.UnlockComponent("Anything for 30-day trial")
IF (lnSuccess <> 1) THEN
    =MESSAGEBOX(loFtp.LastErrorText)
    QUIT
ENDIF

loFtp.Hostname = "www.akronbackups.com"
loFtp.Username = "*myLogin6*"
loFtp.Password = "*myPassword6*"

* Connect and login to the FTP server.
lnSuccess = loFtp.Connect()
IF (lnSuccess <> 1) THEN
    =MESSAGEBOX(loFtp.LastErrorText)
    QUIT
ENDIF

* Change to the remote directory where the file will be uploaded.
lnSuccess = loFtp.ChangeRemoteDir("junk")
IF (lnSuccess <> 1) THEN
    =MESSAGEBOX(loFtp.LastErrorText)
    QUIT
ENDIF

lcLocalFilename = "hamlet.xml"

lcRemoteFilename = "hamlet.xml"

* Begin the upload in a background thread.
* Only 1 background upload or download may be active at any time.
* (per instance of an FTP object)
* To append to an existing file in the background, call
* AsyncAppendFileStart instead.
lnSuccess = loFtp.AsyncPutFileStart(lcLocalFilename,lcRemoteFilename)
IF (lnSuccess <> 1) THEN
    =MESSAGEBOX(loFtp.LastErrorText)
    QUIT
ENDIF

* The application is now free to do anything else
* while the file is uploading.
* For this example, we'll simply sleep and periodically
* check to see if the transfer if finished.  While checking
* however, we'll report on the progress in both number
* of bytes tranferred and performance in bytes/second.
DO WHILE loFtp.AsyncFinished <> 1

    ? loFtp.AsyncBytesSent + " bytes sent"
    ? loFtp.UploadRate + " bytes per second"

    * Sleep 1 second.
    loFtp.SleepMs(1000)
ENDDO

* Did the upload succeed?
IF (loFtp.AsyncSuccess = 1) THEN
    =MESSAGEBOX("File Uploaded!")
ELSE
    * The error information for asynchronous ops
    * is in AsyncLog as opposed to LastErrorText
    =MESSAGEBOX(loFtp.AsyncLog)
ENDIF

loFtp.Disconnect()

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

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

Mail Component · .NET Email Component · ASP Mail Component · XML Parser