HDR*PowerBuilder05005A3WINFTP32 non-visual objectFRE*NOD* 8`ENT*0500 `*A3nv_winftp32.udoENT*0500r?*A3nv_winftp32.sruDAT*O)A3*A3J [@[@[@ & 1 8 A R ] eJmj_ztl jo*0 *L cl jtsr J* jhbajn         ) 9 B O _ h t ! " # DAT*$ cm%j_f&jttp'jeue(Jsun)Jf*je$p_+J/f,je8t-jpErt.j_M/ U0 ^1 m2 3 4 5 6 7 8 9 : ; < )= 6> C? W@ gA qB C D p@p@nv_winftp32nonvisualobjectftp_abortftp_appendftp_cdftp_cdupftp_copyreplystrDAT*ftp_deleteftp_dirftp_getftp_getreplyftp_lasterrorftp_lcdftp_localuniqueftp_loginftp_lsftp_mgetftp_mkdirftp_mputftp_putftp_pwdftp_quoteftp_quitftp_renameftp_rmdirftp_setasciiftp_setbinaryftp_siteftp_storeuniqueftp_openftp_openportftp_isconnectedftp_noopftp_reloginftp_gateloginftp_statusboxftp_replycodef_getfileattrf_setfileattrf_fileattr_archf_fileattr_hiddenf_fileattr_normalf_fileattr_rdonlyf_fileattr_subdirf_fileattr_systemf_copyfilef_renamef_deletefilef_mDAT*kdirf_rmdirf_getcwdf_gettempfnameftp_openreadforgetftp_openreadfordirftp_openreadforlistftp_readdataftp_closereadftp_openwriteforappendftp_openwriteforputftp_writedataftp_closewriteftp_setreceivetimeoutwww_openwww_openportwww_senddatawww_senddatawithendwww_receivedatawww_closewww_getsocketwww_invalidsocketwinftp_versionmessage2 nv_winftp32  hndlftp_abortwinftp32.dllftp_abortAlocalfileremotefileftp_appendftp_appendAdirnameDAT*ftp_cdftp_cdAftp_cdupftp_cdupAmsgmsgsizeftp_copyreplystrftp_copyreplystrAftp_deleteftp_deleteAftp_dirftp_dirAftp_getftp_getAftp_getreplyftp_getreplyAmsglenftp_lasterrorftp_lasterrorAlocaldirftp_lcdftp_lcdAftp_localuniqueftp_localuniqueAservernameusernameuserpasswdacctftp_loginftp_loginAftp_lsftp_lsAremotefilesftp_mgetftp_mgetAremotedirftp_mkdirftp_mkdirAlocalfilesfilecaseftp_mputftp_mputAftp_putftp_putAbufferbuflenftp_pwdftp_pwdAquoteftp_quoteftp_DAT*quoteAftp_quitftp_quitAfromfiletofileftp_renameftp_renameAftp_rmdirftp_rmdirAftp_setasciiftp_setasciiAftp_setbinaryftp_setbinaryAremotecmdftp_siteftp_siteAftp_storeuniqueftp_storeuniqueAhostftp_openftp_openAportftp_openportftp_openportAftp_isconnectedftp_isconnectedAftp_noopftp_noopAftp_reloginftp_reloginAhostnameftp_gateloginftp_gateloginAflagftp_statusboxftp_statusboxAftp_replycodeftp_replycodeApathnamef_getfileattrf_getfileattrAattrf_setfileattrlong f_DAT*setfileattrAf_fileattr_archf_fileattr_archAf_fileattr_hiddenf_fileattr_hiddenAf_fileattr_normalf_fileattr_normalAf_fileattr_rdonlyf_fileattr_rdonlyAf_fileattr_subdirf_fileattr_subdirAf_fileattr_systemf_fileattr_systemAsrcdestf_copyfilef_copyfileAoldfilenewfilef_renamef_renameAfilenamef_deletefilef_deletefileAf_mkdirf_mkdirAf_rmdirf_rmdirAf_getcwdf_getcwdAprefixf_gettempfnamef_gettempfnameAremoteftp_openreadforgetftp_openreadforgetAftp_openreadfordirftp_openreadDAT* fordirAftp_openreadforlistftp_openreadforlistAbufsizeftp_readdataftp_readdataAftp_closereadftp_closereadAtot_bytesftp_openwriteforappendftp_openwriteforappendAftp_openwriteforputftp_openwriteforputAftp_writedataftp_writedataAftp_closewriteftp_closewriteAtimeoutftp_setreceivetimeoutftp_setreceivetimeoutAwww_openwww_OpenAwww_openportwww_OpenPortAwww_senddatawww_SendDataAwww_senddatawithendwww_SendDataWithEndAwww_receivedatawww_ReceiveDataAwww_closewww_CloseAwww_getsocDAT*"ketwww_GetSocketAwww_invalidsocketwww_InvalidSocketAwinftp_versionwinftp_versionAas_hostas_useras_passwduf_loginas_titleuf_errormsgpf_checkuf_logoutpf_geterroras_remoteas_localuf_getuf_putuf_binaryuf_asciias_cmdas_resultuf_quoteas_dirnameuf_cduf_cdupuf_storeuniqueuf_localuniqueuf_abortuf_appenduf_diruf_lsuf_mkdiruf_rmdiras_fromas_touf_renameai_onoffuf_statusboxuf_gwloginuf_pwdas_pwd+create+destroy+destructorDp'1DAT*$S}1S'1'}$_js~S''1$<DAT*&$js4js~js~,-1MUpSS$DAT*($mmK4mmmKDAT**  . .  .  . .      0HTxDh4@d|DAT*,$`x8Ph(@Ld$<H`l8 x-_initsrcnonvisualobjectnv_winftp32messagePDAT*. @%H@c`socEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab) 8&) 846668<0)H8P$18X0)l89}  &hd DAT*0as_hostas_useras_passwdlb_rcP   t0pf_checkZuf_logoutA[il_handlef_(ftp_loginc=(Loginuf_errormsgCY^  4 H P l 26) 8s@s8d as_title pf_geterror\ l $1B9}$8,0\DAT*20880$>B \dlb_rcail_handleftis_lasterrorirftpFTP session has not been established yet $ 0 ) 8 $)481d8<0)P89}X1p8x0<Xdz dlb_rcp_y0pf_checkftpZDAT*4il_handleopftp_quitete'(Closeuf_errormsgplYBis_lasterror`  4 P X p T1@81)86 @dls_msgse ftp_lasterror ) 8t $66)081t880)H89}Lh tdDAT*6as_remoteas_locallb_rc<  P pf_checkZil_handleftp_get(GETuf_errormsgY<  0 H .680)8d as_remotep_ uf_get] ) 8t $66)081t880)H89}Lh DAT*8tdas_localas_remotelb_rc<  P pf_checkZil_handleftp_put$(PUTuf_errormsgY<  0 H .680)8d as_local uf_put_ b) 8R $)88L9}9}2FRdlb_rcDAT*:seT pf_checkZil_handleftp_setbinary+(ib_isbinary@  8 L b) 8R $)88L9}9}2FRdlb_rcp_T pf_checkZil_handleftp_setascii*(ib_isbinary@  8 L ) 81@8 DAT*<$61)48169}8<0)P84r d!as_cmdas_resultlb_rcls_resultPB tp B X pf_check,BZil_handleOftp_quoteB&(Quoteuf_errormsgBYB  4 P ) 8p $6)081T9}DAT*>p880)X8DPT pdas_dirnamelb_rc(  ` pf_checkZil_handleftp_cd(Change Directoryuf_errormsg!CYI  0 X x) 8h $)481L9}h8<0)\8<HL hdlb_rcd pf_check5ZDAT*@il_handleftp_cdup:(Change Directory Upuf_errormsgYP  4 \ x) 8h $)881L9}h8@0)\8<HL hdlb_rcpud pf_checkZil_handle$ftp_storeunique-(Store Uniqueuf_errormsgHYM  8 \ x) 8h $)881DAT*BL9}h8@0)\8<HL hdlb_rcdld pf_checkftpZil_handleftftp_localunique(Local Uniqueuf_errormsgoteYM  8 \ x) 8h $)481L9}h8<0)P8<HL hdlb_rcX pf_checkZil_handDAT*Dleftp_abort(Abortuf_errormsgYB  4 P ) 8x $66)481\9}x8<0)P8LX\ xdas_localas_remotelb_rc<  X pf_checkZil_handleftp_append(Appenduf_errormsgYC  4 P , ) DAT*F8 $6)<819}1@8D$1)\81-z%1@8pd$)|880)8DPp d%as_dirnameas_resultlb_rcls_resultPB r B@ @pf_check5ZiDAT*Hl_handleftp_openreadfordirF(ftp_readdatasgHLftp_closereadIlDiruf_errormsgY  < D \ d |  , ) 8 $6)<819}1@8D$1)\81-z%1@8pd$)|880)8DAT*JDPp d%as_dirnameas_resultlb_rcls_resultP   @pf_checkZil_handleftp_openreadforlistG(ftp_readdataOHLftp_closereadBIlListuf_errormsg$BY  < D \ d |  ) 8p $6)481T9}DAT*Lp8<0)X8DPT pdas_dirnamelb_rc(  ` pf_checkZil_handleftp_mkdir"(Make Directoryuf_errormsgYK  4 X ) 8p $6)481T9}p8<0)\8DPT pdas_dirnamelb_rc(  DAT*Nd pf_checkZil_handleftp_rmdirz)(Remote Directoryuf_errormsgAYM  4 \ ) 8x $66)481\9}x8<0)P8LX\ xdas_fromas_tolb_rc<P tp PX pf_checkBCZil_handleBftp_rename((Renameuf_errormsgAYDAT*PC  4 P ) 8p $<)881T9}p8@0)X8DPT pdai_onofflb_rc( ` pf_checkZil_handleftp_statusboxB4(Status Boxuf_errormsgYK  8 X ) 8 $6668(0)881nDAT*R9}8@0)\8^jn d as_hostas_useras_passwdlb_rcP B  Bd pf_checkZil_handleftp_gatelogin3)Gateway Loginuf_errormsgYN  8 \ .)86d ls_result uf_pwdr ) DAT*T81@8 $1)08169}880)H84jz das_pwdlb_rcls_result<  P pf_checkZil_handleftp_pwd%(PWDuf_errormsgY<  0 H "80)8d$constrDAT*Vuctortriggerevent  "80)8d destructortriggerevent  j $16$)(8,IP1^,I0$ 6d ::messageI@8 il_handledftp_quitO'  ( 0 `ab   DAT*X  !"#$%&'()*+,-./0123 4!5"6#7$8%9&:';(<)=*>+?,@-A.B/C0D1E2F3G4H5I6J7K8L9M:N;O<P=Q>R?S@TAUBVCWDXEYFZG[H\I]J^K_L`MaNbOcPdQeRfSgThUiVjWkXlYmZn[o\p]q^r_DAT*Z2 ftp_abortftp_appendftp_cdftp_cdupftp_copyreplystrftp_deleteftp_dirftp_getftp_getreplyftp_lasterrorftp_lcdftp_localuniqueftp_loginftp_lsftp_mgetftp_mkdirftp_mputftp_putftp_pwdftp_quoteftp_quitftp_renameftp_rmdirftp_setasciiftp_setbinaryftp_siteftp_storeuniqueftp_openftp_openportftp_isconnectedftp_noopftp_reloginftp_gateloginftp_statusboxftp_replycodef_getfileattrf_setfileattrf_fileattr_archf_fileattr_hiddenf_fileattr_normalf_fileattr_rdonlDAT*\yf_fileattr_subdirf_fileattr_systemf_copyfilef_renamef_deletefilef_mkdirf_rmdirf_getcwdf_gettempfnameftp_openreadforgetftp_openreadfordirftp_openreadforlistftp_readdataftp_closereadftp_openwriteforappendftp_openwriteforputftp_writedataftp_closewriteftp_setreceivetimeoutwww_openwww_openportwww_senddatawww_senddatawithendwww_receivedatawww_closewww_getsocketwww_invalidsocketwinftp_versionuf_loginuf_errormsgpf_checkuf_logoutpf_geterroruf_getuf_putuf_binaryuf_asciiDAT*^uf_quoteuf_cduf_cdupuf_storeuniqueuf_localuniqueuf_abortuf_appenduf_diruf_lsuf_mkdiruf_rmdiruf_renameuf_statusboxuf_gwloginuf_pwd+create+destroy+destructor FRE*%6AIQ^ l t   DAT*`E* &3CLX f!t"#$%&'(DAT*b)*+,-).1/90B1Q2d3w456789:;< =>'?subd;@atysteKAtrtemAUDAT*dBf_filecCeAfileuD_ref_Elef_dFf_tefiGrdirAH_rAf_IetpreJemmefKamemotLrergetMeagetANeadirOirAPadistQadistARtpddatSdaftp_TftoserUyttp_oVradft!Wefpend(Xwrorpu.Ywrorpu7Zteftp@DAT*f[AclosJ\_cwritW]fetreb^ut_setb_eoi`BqaBzbB2 2il_handleib_isbinaryib_statusboxonis_lasterrorP %MD< GD[0bDjHsDTDxDAT*hDDDD D-5 D>N D DD Dh!D"D#D $D+3%DBL&DW4`'DDAT*jz@(Dd)D|*D+D,D -D!*.D9F/DTd0Du~1D2D$3 D`4!Dx5"D6#D1?7$DAT*lDSc8%Dt9&D:'D;(D<)D=*D6A>+D]f?,Dy@-DA.DB/DC0DD1D8 E2DP0F3DDhXDAT*nG4DuH5DI6DJ7DK8DL9D,;M:DS(iN;D@O<DLP=DdQ>DR?DS@DTAD(6UB DEWVC DDAT*pjyWDDXE:PYFPR\;PZGPR;P[HPR\P`M aN  bO % l7NcP NN9 7NdQ NN? 8NeR NNG 8NfSDAT*NNV 9NgTNNe 9NhUNNn :NiVNNx :NjWNN ;NkXNN ;NlYNN :PmZPR \;Pn[PR ;Po\PR \PaPP >PbPPDAT*tWinftp32 objectforward global type nv_winftp32 from nonvisualobject end type end forward global type nv_winftp32 from nonvisualobject end type global nv_winftp32 nv_winftp32 type prototypes // Copyright (c) 1996 H&S Technology, Inc. All Rights Reserved. Function long ftp_abort(long hndl) library "winftp32.dll" ALIAS FOR "ftp_abortA" Function long ftp_append(long hndl, string localFile, string remoteFile) library "winftp32.dll" ALIAS FOR "ftp_appendA" Function long ftp_cd(long hndDAT*vl, string dirname) library "winftp32.dll" ALIAS FOR "ftp_cdA" Function long ftp_cdup(long hndl) library "winftp32.dll" ALIAS FOR "ftp_cdupA" Function long ftp_copyreplystr(long hndl, Ref string msg, long msgSize) library "winftp32.dll" ALIAS FOR "ftp_copyreplystrA" Function long ftp_delete(long hndl, string remoteFile) library "winftp32.dll" ALIAS FOR "ftp_deleteA" Function long ftp_dir(long hndl, string dirname, string localFile) library "winftp32.dll" ALIAS FOR "ftp_dirA" Function long DAT*xftp_get(long hndl, string remoteFile, string localFile) library "winftp32.dll" ALIAS FOR "ftp_getA" Function string ftp_getreply(long hndl) library "winftp32.dll" ALIAS FOR "ftp_getreplyA" Function long ftp_lasterror( Ref string msg, long msglen) library "winftp32.dll" ALIAS FOR "ftp_lasterrorA" Function long ftp_lcd( string localDir) library "winftp32.dll" ALIAS FOR "ftp_lcdA" Function long ftp_localunique(long hndl) library "winftp32.dll" ALIAS FOR "ftp_localuniqueA" Function long ftp_logDAT*zin( string serverName, string userName, string userPasswd, string acct) library "winftp32.dll" ALIAS FOR "ftp_loginA" Function long ftp_ls(long hndl, string dirname, string localFile) library "winftp32.dll" ALIAS FOR "ftp_lsA" Function long ftp_mget(long hndl, string remotefiles) library "winftp32.dll" ALIAS FOR "ftp_mgetA" Function long ftp_mkdir(long hndl, string remoteDir) library "winftp32.dll" ALIAS FOR "ftp_mkdirA" Function long ftp_mput(long hndl, string localfiles, long fileCasDAT*|e) library "winftp32.dll" ALIAS FOR "ftp_mputA" Function long ftp_put(long hndl, string localFile, string remoteFile) library "winftp32.dll" ALIAS FOR "ftp_putA" Function long ftp_pwd(long hndl, Ref string buffer, long buflen) library "winftp32.dll" ALIAS FOR "ftp_pwdA" Function long ftp_quote(long hndl, string quote, Ref string buffer, long buflen) library "winftp32.dll" ALIAS FOR "ftp_quoteA" Function long ftp_quit(long hndl) library "winftp32.dll" ALIAS FOR "ftp_quitA" Function long fDAT*~tp_rename(long hndl, string fromFile, string toFile) library "winftp32.dll" ALIAS FOR "ftp_renameA" Function long ftp_rmdir(long hndl, string remoteDir) library "winftp32.dll" ALIAS FOR "ftp_rmdirA" Function long ftp_setascii(long hndl) library "winftp32.dll" ALIAS FOR "ftp_setasciiA" Function long ftp_setbinary(long hndl) library "winftp32.dll" ALIAS FOR "ftp_setbinaryA" Function long ftp_site(long hndl, string remoteCmd) library "winftp32.dll" ALIAS FOR "ftp_siteA" Function long ftp_stoDAT*reunique(long hndl) library "winftp32.dll" ALIAS FOR "ftp_storeuniqueA" Function long ftp_open( string host) library "winftp32.dll" ALIAS FOR "ftp_openA" Function long ftp_openport( string host, long port) library "winftp32.dll" ALIAS FOR "ftp_openportA" Function long ftp_isconnected(long hndl) library "winftp32.dll" ALIAS FOR "ftp_isconnectedA" Function long ftp_noop(long hndl) library "winftp32.dll" ALIAS FOR "ftp_noopA" Function long ftp_relogin(long hndl, string userName, string userPaDAT*sswd, string acct) library "winftp32.dll" ALIAS FOR "ftp_reloginA" Function long ftp_gatelogin(long hndl, string hostName, string userName, string userPasswd, string acct) library "winftp32.dll" ALIAS FOR "ftp_gateloginA" Function long ftp_statusbox(long hndl, long flag) library "winftp32.dll" ALIAS FOR "ftp_statusboxA" Function long ftp_replycode(long hndl) library "winftp32.dll" ALIAS FOR "ftp_replycodeA" Function long f_getfileattr( string pathname) library "winftp32.dll" ALIAS FOR DAT*"f_getfileattrA" Function long f_setfileattr( string pathname, long attr) library "winftp32.dll" ALIAS FOR "long f_setfileattrA" Function long f_fileattr_arch() library "winftp32.dll" ALIAS FOR "f_fileattr_archA" Function long f_fileattr_hidden() library "winftp32.dll" ALIAS FOR "f_fileattr_hiddenA" Function long f_fileattr_normal() library "winftp32.dll" ALIAS FOR "f_fileattr_normalA" Function long f_fileattr_rdonly() library "winftp32.dll" ALIAS FOR "f_fileattr_rdonlyA" Function long f_fiDAT*leattr_subdir() library "winftp32.dll" ALIAS FOR "f_fileattr_subdirA" Function long f_fileattr_system() library "winftp32.dll" ALIAS FOR "f_fileattr_systemA" //Function long f_fileattr_volid() library "winftp32.dll" ALIAS FOR "f_fileattr_volidA" Function long f_copyfile( string src, string dest) library "winftp32.dll" ALIAS FOR "f_copyfileA" Function long f_rename( string oldfile, string newfile) library "winftp32.dll" ALIAS FOR "f_renameA" Function long f_deletefile( string filename) libraryDAT* "winftp32.dll" ALIAS FOR "f_deletefileA" Function long f_mkdir( string dirname) library "winftp32.dll" ALIAS FOR "f_mkdirA" Function long f_rmdir( string dirname) library "winftp32.dll" ALIAS FOR "f_rmdirA" Function long f_getcwd( Ref string buffer, long buflen) library "winftp32.dll" ALIAS FOR "f_getcwdA" Function long f_gettempfname( string prefix, Ref string buffer, long buflen) library "winftp32.dll" ALIAS FOR "f_gettempfnameA" // New v2.5 functions Function long ftp_openreadforgetDAT*(long hndl, string remote) library "winftp32.dll" ALIAS FOR "ftp_openreadforgetA" Function long ftp_openreadfordir(long hndl, string remote) library "winftp32.dll" ALIAS FOR "ftp_openreadfordirA" Function long ftp_openreadforlist(long hndl, string remote) library "winftp32.dll" ALIAS FOR "ftp_openreadforlistA" Function long ftp_readdata(long hndl, Ref string buffer, long bufsize) library "winftp32.dll" ALIAS FOR "ftp_readdataA" Function long ftp_closeread(long hndl) library "winftp32.dll" ALIADAT*S FOR "ftp_closereadA" Function long ftp_openwriteforappend(long hndl, string remote, long tot_bytes) library "winftp32.dll" ALIAS FOR "ftp_openwriteforappendA" Function long ftp_openwriteforput(long hndl, string remote, long tot_bytes) library "winftp32.dll" ALIAS FOR "ftp_openwriteforputA" Function long ftp_writedata(long hndl, string buffer, long bufsize) library "winftp32.dll" ALIAS FOR "ftp_writedataA" Function long ftp_closewrite(long hndl) library "winftp32.dll" ALIAS FOR "ftp_closewritDAT*eA" Function long ftp_setreceivetimeout(long hndl, long timeout) library "winftp32.dll" ALIAS FOR "ftp_setreceivetimeoutA" Function long www_Open(string host) library "winftp32.dll" ALIAS FOR "www_OpenA" Function long www_OpenPort(string host, integer port) library "winftp32.dll" ALIAS FOR "www_OpenPortA" Function long www_SendData(long hndl, string buffer, long bufsize) library "winftp32.dll" ALIAS FOR "www_SendDataA" Function long www_SendDataWithEnd(long hndl, string buffer, long bufsize) DAT*library "winftp32.dll" ALIAS FOR "www_SendDataWithEndA" Function long www_ReceiveData(long hndl, Ref string buffer, long bufsize, long timeout) library "winftp32.dll" ALIAS FOR "www_ReceiveDataA" Function long www_Close(long hndl) library "winftp32.dll" ALIAS FOR "www_CloseA" Function ulong www_GetSocket(long hndl) library "winftp32.dll" ALIAS FOR "www_GetSocketA" Function ulong www_InvalidSocket() library "winftp32.dll" ALIAS FOR "www_InvalidSocketA" Function long winftp_version() library "wDAT*inftp32.dll" ALIAS FOR "winftp_versionA" end prototypes type variables protected: long il_handle = 0 Boolean ib_isBinary = False Boolean ib_statusBoxOn = False string is_lasterror end variables forward prototypes public function boolean uf_login (string as_host, string as_user, string as_passwd) public subroutine uf_errormsg (string as_title) public function boolean pf_check () public function boolean uf_logout () public function string pf_geterror () public function boolean uf_DAT*get (string as_remote, string as_local) public function boolean uf_get (string as_remote) public function boolean uf_put (string as_local, string as_remote) public function boolean uf_put (string as_local) public function boolean uf_binary () public function boolean uf_ascii () public function boolean uf_quote (string as_cmd, ref string as_result) public function boolean uf_cd (string as_dirname) public function boolean uf_cdup () public function boolean uf_storeunique () public functionDAT* boolean uf_localunique () public function boolean uf_abort () public function boolean uf_append (string as_local, string as_remote) public function boolean uf_dir (string as_dirname, ref string as_result) public function boolean uf_ls (string as_dirname, ref string as_result) public function boolean uf_mkdir (string as_dirname) public function boolean uf_rmdir (string as_dirname) public function boolean uf_rename (string as_from, string as_to) public function boolean uf_statusbox (integerDAT* ai_onoff) public function boolean uf_gwlogin (string as_host, string as_user, string as_passwd) public function string uf_pwd () public function boolean uf_pwd (ref string as_pwd) end prototypes public function boolean uf_login (string as_host, string as_user, string as_passwd);/* * COPYRIGHT NOTICE * Copyright (c) 1997 H&S Technology, Inc. * ALL RIGHTS RESERVED. */ Boolean lb_rc = False If pf_check() Then uf_logout() End If il_handle = ftp_login(as_host, as_user, as_passDAT*wd, "") If il_handle <= 0 Then uf_ErrorMsg("Login") Else lb_rc = TRUE End If return lb_rc end function public subroutine uf_errormsg (string as_title); MessageBox(as_title, pf_geterror()) end subroutine public function boolean pf_check ();Boolean lb_rc = False If il_handle > 0 Then lb_rc = True is_lasterror = "" Else is_lasterror = "FTP session has not been established yet" End If return lb_rc end function public function boolean uf_logout ();Boolean lb_rc = TDAT*rue If pf_check() Then If ftp_quit(il_handle) <> 0 Then uf_errormsg("Close") lb_rc = False End If il_handle = 0 is_lasterror = "" End If return lb_rc end function public function string pf_geterror ();String ls_msg ls_msg = space(512) ftp_lasterror(ls_msg, 512) return ls_msg end function public function boolean uf_get (string as_remote, string as_local);Boolean lb_rc = True If pf_check() Then If ( ftp_get(il_handle, as_remote, as_local) <> 0 ) Then uf_erDAT*rormsg("GET") lb_rc = False End If End If return lb_rc end function public function boolean uf_get (string as_remote); return uf_get(as_remote, "") end function public function boolean uf_put (string as_local, string as_remote);Boolean lb_rc = True If pf_check() Then If ( ftp_put(il_handle, as_local, as_remote) <> 0 ) Then uf_errormsg("PUT") lb_rc = False End If End If return lb_rc end function public function boolean uf_put (string as_local);return uf_put(asDAT*_local,"") end function public function boolean uf_binary ();Boolean lb_rc = False If ( pf_check() ) Then ftp_setbinary(il_handle) ib_isbinary = True lb_rc = True End If return lb_rc end function public function boolean uf_ascii ();Boolean lb_rc = False If ( pf_check() ) Then ftp_setascii(il_handle) ib_isbinary = False lb_rc = True End If return lb_rc end function public function boolean uf_quote (string as_cmd, ref string as_result);Boolean lb_rc = False String DAT*ls_result If ( pf_check() ) Then ls_result = space(1024) If ( ftp_quote(il_handle, as_cmd, ls_result, 1024) = 2 ) Then as_result = ls_result lb_rc = True Else uf_errormsg("Quote") End If End If return lb_rc end function public function boolean uf_cd (string as_dirname);Boolean lb_rc = False If ( pf_check() ) Then If ( ftp_cd(il_handle, as_dirname) = 0 ) Then lb_rc = True Else uf_errormsg("Change Directory") End If End If return lb_rc end function DAT*public function boolean uf_cdup ();Boolean lb_rc = False If ( pf_check() ) Then If ( ftp_cdup(il_handle) = 0 ) Then lb_rc = True Else uf_errormsg("Change Directory Up") End If End If return lb_rc end function public function boolean uf_storeunique ();Boolean lb_rc = False If ( pf_check() ) Then If ( ftp_storeunique(il_handle) = 0 ) Then lb_rc = True Else uf_errormsg("Store Unique") End If End If return lb_rc end function public function boolean uf_locaDAT*lunique ();Boolean lb_rc = False If ( pf_check() ) Then If ( ftp_localunique(il_handle) = 0 ) Then lb_rc = True Else uf_errormsg("Local Unique") End If End If return lb_rc end function public function boolean uf_abort ();Boolean lb_rc = False If ( pf_check() ) Then If ( ftp_abort(il_handle) = 0 ) Then lb_rc = True Else uf_errormsg("Abort") End If End If return lb_rc end function public function boolean uf_append (string as_local, string as_remote);BoolDAT*ean lb_rc = False If ( pf_check() ) Then If ( ftp_append(il_handle,as_local,as_remote) = 0 ) Then lb_rc = True Else uf_errormsg("Append") End If End If return lb_rc end function public function boolean uf_dir (string as_dirname, ref string as_result);Boolean lb_rc = False String ls_result If ( pf_check() ) Then If ftp_openreadfordir(il_handle, as_dirname) = 0 Then lb_rc = True ls_result = space(1024) Do While (ftp_readdata(il_handle, ls_result, 1024) > 0 ) DAT* as_result = as_result + ls_result ls_result = space(1024) Loop ftp_closeread(il_handle) Else uf_errormsg("Dir") End If End If return lb_rc end function public function boolean uf_ls (string as_dirname, ref string as_result);Boolean lb_rc = False String ls_result If ( pf_check() ) Then If ftp_openreadforlist(il_handle, as_dirname) = 0 Then lb_rc = True ls_result = space(1024) Do While (ftp_readdata(il_handle, ls_result, 1024) > 0 ) as_result = as_result DAT*+ ls_result ls_result = space(1024) Loop ftp_closeread(il_handle) Else uf_errormsg("List") End If End If return lb_rc end function public function boolean uf_mkdir (string as_dirname);Boolean lb_rc = False If ( pf_check() ) Then If ftp_mkdir(il_handle, as_dirname) = 0 Then lb_rc = True Else uf_errormsg("Make Directory") End If End If return lb_rc end function public function boolean uf_rmdir (string as_dirname);Boolean lb_rc = False If ( pf_check(DAT*) ) Then If ftp_rmdir(il_handle, as_dirname) = 0 Then lb_rc = True Else uf_errormsg("Remote Directory") End If End If return lb_rc end function public function boolean uf_rename (string as_from, string as_to);Boolean lb_rc = False If ( pf_check() ) Then If ftp_rename(il_handle, as_from, as_to) = 0 Then lb_rc = True Else uf_errormsg("Rename") End If End If return lb_rc end function public function boolean uf_statusbox (integer ai_onoff);Boolean lb_rc = FalDAT*se If ( pf_check() ) Then If ftp_statusbox(il_handle, ai_onoff) = 0 Then lb_rc = True Else uf_errormsg("Status Box") End If End If return lb_rc end function public function boolean uf_gwlogin (string as_host, string as_user, string as_passwd);Boolean lb_rc = False If ( pf_check() ) Then If ftp_gatelogin(il_handle, as_host, as_user, as_passwd, "") = 0 Then lb_rc = True Else uf_errormsg("Gateway Login") End If End If return lb_rc end function public funcDAT*tion string uf_pwd ();String ls_result uf_pwd(ls_result) return ls_result end function public function boolean uf_pwd (ref string as_pwd);Boolean lb_rc = False String ls_result If ( pf_check() ) Then ls_result = space(144) If ftp_pwd(il_handle, ls_result, 144) <> -1 Then as_pwd = ls_result lb_rc = True Else uf_errormsg("PWD") End If End If return lb_rc end function on nv_winftp32.create TriggerEvent( this, "constructor" ) end on on nv_winftp32.destroy TDAT*riggerEvent( this, "destructor" ) end on event destructor;/* * COPYRIGHT NOTICE * Copyright (c) 1997 H&S Technology, Inc. * ALL RIGHTS RESERVED. */ If il_handle > 0 Then ftp_quit(il_handle) End If end event