LOCAL FTPgetfile, FTPsavefile, PortNumber, FTPServerName LOCAL lhInternetConnection, lhFTPFile, lhFTPSession FTPServerName = "111.222.333.444" PortNumber = 21 lhInternetConnection = 0000 #DEFINE INTERNET_SERVICE_FTP 1 #DEFINE FTP_TRANSFER_TYPE_ASCII 1 #DEFINE FILE_ATTRIBUTE_NORMAL 128 DECLARE INTEGER InternetOpen ; IN WinInet.dll; STRING lpszAgent,; INTEGER dwAccessType,; STRING lpszProxyName,; STRING lpszProxyBypass,; INTEGER dwFlags DECLARE INTEGER InternetConnect ; IN WinInet.dll ; INTEGER hIPHandle,; STRING lpszServer,; INTEGER dwPort,; STRING lpszUserName,; STRING lpszPassWord,; INTEGER dwServiceFlags,; INTEGER dwReserved,; INTEGER dwReserved DECLARE INTEGER InternetCloseHandle; IN WinInet.dll; INTEGER hIPSession DECLARE INTEGER FtpSetCurrentDirectory; IN WinInet.dll; INTEGER lhFTPSession,; STRING lpszDirectory DECLARE INTEGER FtpPutFile; IN WinInet.dll; INTEGER hConnect,; STRING lpszSendFileName,; STRING lpszTargetFileName,; INTEGER dwFlags,; INTEGER dwReserved DECLARE INTEGER InternetCloseHandle ; IN WinInet.dll ; INTEGER hInternet DECLARE INTEGER FtpOpenFile ; IN WinInet.dll ; INTEGER hIPSession,; STRING @lpszFileName,; INTEGER dwAcessFlags,; INTEGER dwServiceFlags,; INTEGER dwContext DECLARE INTEGER InternetWriteFile ; IN WinInet.dll ; INTEGER hFTPHandle,; STRING lcBuffer,; INTEGER cbBuffer,; INTEGER @cbBuffer DECLARE INTEGER InternetSetOption; IN WinInet.dll; INTEGER hIPSession,; INTEGER dwOption,; INTEGER @lpBuffer,; LONG lpdwBufferLength DECLARE INTEGER GetLastError; IN Win32API DECLARE INTEGER FtpGetFile IN wininet; INTEGER lhFtpSession, STRING lpszRemoteFile,; STRING lpszNewFile, INTEGER fFailIfExists,; INTEGER dwFlagsAndAttributes,; INTEGER dwFlags, INTEGER dwContext lhInternetConnection = InternetOpen("3G Only Connection", 1, NULL, NULL, 0 ) IF lhInternetConnection = 0 WAIT WINDOW "problem with internet connection" RETURN ENDIF * CONNECT TO THE FTP SERVER lhFTPSession = InternetConnect(; lhInternetConnection,; FTPServerName,; PortNumber,; "username1",; "password2",; INTERNET_SERVICE_FTP,0,0) IF lhFTPSession = 0 WAIT WINDOW "problem connecting to server" RETURN ENDIF lpszRemoteFile = "acupdate.zip" + CHR(0) lpszNewFile = "d:\kernel\acupdate.zip" + CHR(0) fFailIfExists = 0 && do not stop if the target already exists dwContext = 0 lnResult = FtpGetFile(lhFTPSession, lpszRemoteFile, lpszNewFile,; fFailIfExists, FILE_ATTRIBUTE_NORMAL, FTP_TRANSFER_TYPE_ASCII,; dwContext) IF lnResult = 0 WAIT WINDOW "NO" ELSE WAIT WINDOW "TRANSFER DONE" ENDIF>Put these lines first
>#define FTP_TRANSFER_TYPE_ASCII 1 >#DEFINE FILE_ATTRIBUTE_NORMAL 128>
>>>DECLARE INTEGER FtpGetFile IN wininet; >>> INTEGER hFtpSession, STRING lpszRemoteFile,; >>> STRING lpszNewFile, INTEGER fFailIfExists,; >>> INTEGER dwFlagsAndAttributes,; >>> INTEGER dwFlags, INTEGER dwContext >>> >>>lpszRemoteFile = "somefile.txt" >>>lpszNewFile = "c:\Temp\somefile.txt" >>>fFailIfExists = 0 && do not stop if the target already exists >>>dwContext = 0 >>> >>>lnResult = FtpGetFile(hFtpSession, lpszRemoteFile, lpszNewFile,; >>> fFailIfExists, FILE_ATTRIBUTE_NORMAL, FTP_TRANSFER_TYPE_ASCII,; >>> dwContext) >>>>>>