为编程爱好者分享易语言教程源码的资源网
每日必买商品 易语言实地培训火热招生 建站,挂机,机器人服务器 A全站文字广告,诚邀与您合作 三叶资源网官方③群:33301895
C全站文字广告,诚邀与您合作 乐易论坛 热门服务器秒杀 D全站文字广告,诚邀与您合作 三叶资源网官方③群:33301895

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

易语言FTP超时处理源码

三叶资源网 2013-03-11 网络相关源码 217 ℃ 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)

资源下载:

文件下载

Tags:

来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网官方⑤群:7366443

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

欢迎 发表评论:

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

网站分类
随机tag
属性框虎牙登录KMP算法抖音脚本图文识别取QQ昵称亦表格LOL免更新易语言源码网微信加人脚本源码模拟系列教程文字识别GIF录屏网络验证dom获取本机信息无限加好友分段加密劲舞团
最新评论