为编程爱好者分享易语言教程源码的资源网
免费易语言注册机教程 程序员交流社区 挂机,挂机器人服务器95一年 广告位招租 三叶资源网交流群④ 【采购季】上云仅¥223/3年
免费易语言注册机教程 每日疯抢商品 建站服务器 便宜好看的文具盒 三叶资源网交流群④ 【采购季】上云仅¥223/3年
程序员交流社区 每日疯抢商品 建站服务器 便宜好看的文具盒 三叶资源网交流群④ 【采购季】上云仅¥223/3年

网站首页 易语言相关 网络相关源码 正文

易语言FTP超时处理源码

三叶资源网 2013-03-11 网络相关源码 341 ℃ 0 评论

资源介绍:

易语言FTP超时处理源码,通过调用windowsAPI实现了FTP超时处理。

资源作者:

@易语言自学网

资源界面:

.版本 2
.支持库 EThread
.支持库 spec

.程序集 程序集1

.子程序 _启动子程序, 整数型, , 本子程序在程序启动后最先执行

置随机数种子 ()
标准输出 (, “START...”)
启动线程 (&demo, , )
标准输入 ()
API_FreeConsole ()  ' 64位没办法
返回 (0)  ' 可以根据您的需要返回任意数值

.子程序 demo
.局部变量 szHost, 文本型
.局部变量 szUser, 文本型
.局部变量 szPass, 文本型
.局部变量 szLocalFile, 文本型
.局部变量 szRemoteFile, 文本型
.局部变量 dwExitCode, 整数型
.局部变量 dwTimeout, 整数型
.局部变量 threadParam, PARM
.局部变量 hThread, 整数型
.局部变量 dwThreadId, 整数型
.局部变量 buff, 文本型

g_hOpen = 0
szHost = 到文本 (取随机数 (1, 255)) + “.” + 到文本 (取随机数 (1, 255)) + “.” + 到文本 (取随机数 (1, 255)) + “.” + 到文本 (取随机数 (1, 255))
调试输出 (szHost)
szUser = “Jiesoft”
szPass = “2012”
g_hOpen = API_InternetOpen (“FTP sample”, #INTERNET_OPEN_TYPE_DIRECT, 0, 0, 0)
.如果真 (g_hOpen = 0)
    标准输出 (, #换行符 + “Error on InternetOpen: ” + 到文本 (API_GetLastError ()))
    标准输出 (, #换行符 + “END...”)
    返回 ()
.如果真结束
threadParam.pHost = szHost
threadParam.pUser = szUser
threadParam.pPass = szPass
hThread = API_CreateThread (0, 0, 到整数 (&WorkerFunction), 取变量数据地址 (threadParam), 0, dwThreadId)
dwTimeout = 5000
.如果真 (API_WaitForSingleObject (hThread, dwTimeout) = #WAIT_TIMEOUT)
    标准输出 (, #换行符 + “Can not connect to server in ” + 到文本 (dwTimeout) + “ milliseconds”)
    .如果真 (g_hOpen ≠ 0)
        API_InternetCloseHandle (g_hOpen)
    .如果真结束
    API_WaitForSingleObject (hThread, #INFINITE)
    标准输出 (, #换行符 + “Thread has exited”)
    标准输出 (, #换行符 + “END...”)
    返回 ()
.如果真结束
dwExitCode = 0
.如果真 (API_GetExitCodeThread (hThread, dwExitCode) = 0)
    标准输出 (, #换行符 + “Error on GetExitCodeThread: ” + 到文本 (API_GetLastError ()))
    标准输出 (, #换行符 + “END...”)
    返回 ()
.如果真结束
API_CloseHandle (hThread)
.如果真 (API_FtpGetFile (g_hConnect, szRemoteFile, szLocalFile, 0, #INTERNET_FLAG_RELOAD, #FTP_TRANSFER_TYPE_ASCII, 0) = 0)
    标准输出 (, #换行符 + “Error on FtpGetFile: ” + 到文本 (API_GetLastError ()))
.如果真结束
.如果真 (g_hConnect ≠ 0)
    API_InternetCloseHandle (g_hConnect)
.如果真结束
.如果真 (g_hOpen ≠ 0)
    API_InternetCloseHandle (g_hOpen)
.如果真结束
标准输出 (, #换行符 + “END...”)

.子程序 WorkerFunction, 整数型
.参数 vThreadParm, 整数型
.局部变量 pThreadParm, PARM
.局部变量 buff, 文本型

置入代码 ({ 139, 93, 8, 139, 3, 137, 69, 252 })
g_hConnect = API_InternetConnect (g_hOpen, pThreadParm.pHost, #INTERNET_INVALID_PORT_NUMBER, pThreadParm.pUser, pThreadParm.pPass, #INTERNET_SERVICE_FTP, 0, 0)
.如果真 (g_hConnect = 0)
    标准输出 (, #换行符 + “Error on InternetConnnect: ” + 到文本 (API_GetLastError ()))
    返回 (1)
.如果真结束
返回 (0)

资源下载:

文件下载

来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网④群:72857039

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网④群:三叶资源网③群

网站分类
随机tag
IOCP邮件群发自动同意进群excel表对象模式彗星图文微博界面引擎微信支付系统服务yasm汇编引擎查大鱼号昵称借呗组合框网站开发框架点菜系统GIF录屏Access版JS加密编码
最新评论
友情链接