[转载]在powerbuilder中如何使用FTP进行操作

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

[转载]在powerbuilder中如何使⽤FTP进⾏操作
站点不错
原⽂地址:在powerbuilder中如何使⽤FTP进⾏操作作者:张⽟才
在powerbuilder中如何使⽤FTP进⾏操作
发布者:张⽟才 | 时间:2008-4-11 |16:56:20 | 天⽓:
//引⽤请表明作者:张⽟才
//定义全局外部函数
function uLong InternetOpenA(string lpszAgent, ulong dwAccessType,string lpszProxyName,string lpszProxyBypass, ulong dwFlags) library "wininet.dll"
function ulong InternetConnectA(ulong hInternet,string lpszServerName,ulong nServerPort,string lpszUsername,string lpszPassword,ulong dwService,ulong dwFlags,ulong dwContext) library "wininet.dll"
function boolean InternetCloseHandle(ulong hInternet) library "wininet.dll"
function boolean FtpSetCurrentDirectoryA(ulong hConnect,string lpszDirectory) library "wininet.dll"
function boolean FtpGetFileA(ulong hConnect, string lpszRemoteFile,string lpszNewFile,boolean fFailIfExists,ulong dwFlagsAndAttributes,ulong dwFlags,ulong dwContext) library "wininet.dll"
function boolean FtpPutFileA(ulong hConnect,string lpszLocalFile,string lpszRemoteFile,ulong dwFlags,ulong dwContext) library "wininet.dll"
//参数dwFlags 指定为1时,⽤ASCII 传输⽂件(A类传输⽅法),指定为2是⽤⼆进制传输⽂件(1类传输⽅法)。

由于DIRMAP.TXT 是ASCII ⽂本⽂件,我们传递值1。

//当使⽤回叫信号时,lContext ⽤来识别应⽤程序前后关系。

因为在我们的例⼦中不使⽤回叫信号,所以这个值为0。

//============================================================//
//定义FTP相关的变量
string GS_FTPSERVER,GS_FTPLOGINUSER,GS_FTPLOGINPASS
long GL_FTPLOGINPORT
GS_FTPSERVER=ProfileString("copyfile.ini","update","ftpserver","")
GL_FTPLOGINPORT=integer(ProfileString("copyfile.ini","update","FTPLOGINPORT",""))
GS_FTPLOGINUSER=ProfileString("copyfile.ini","update","FTPLOGINUSER","")
GS_FTPLOGINPASS=ProfileString("copyfile.ini","update","FTPLOGINPASS","")
long ll_hret,ll_hftp
ll_hret = InternetOpenA('数据库更新',0,'','',0)
if ll_hret = 0 or isnull(ll_hret) then
messagebox('错误!','缺少动态连接库WinInet.Dll!',stopsign!)
return
end if
ll_hftp =
InternetConnectA(ll_hret,GS_FTPSERVER,GL_FTPLOGINPORT,GS_FTPLOGINUSER,GS_FTPLOGINPASS,1,0,0) if ll_hftp=0 then
messagebox('错误!','FTP服务器不能连接!',stopsign!)
InternetCloseHandle(ll_hret)
return
end if
string SourceFileDir,TargetFileDir
string SourceFileName,TargetFileName,FileName
//组织源⽂件和上传的⽬标⽂件
if not FtpPutFileA(ll_hftp,SourceFileName,TargetFileName,2,0) then
messagebox('','⽂件<'+SourceFileName+'>不能上传!')
next
InternetCloseHandle(ll_hret)
InternetCloseHandle(ll_hftp)。

相关文档
最新文档