⑴ 求易语言的自动下载更新源码,在线等!正确追加100
说说我做的思路:
我做的一个狩猎场的会员系统,网络环境是内网,开发初期就考虑到后续自动升级问题,所以加了这功能。针对你的情况,你需要开通一个空间,这个网上免费的有,用来存放你的升级文件,不过,看你说的“每次更新了都要再去下载”,应该是有这存放的地方,前提是必须是固定下载地址。升级文件做成自解压程序,再在空间里放一个文本文件,内容为最新的版本号,程序本地需有个配置文件,记录本地版本和升级程序存放地址。流程:打开软件,自动下载打开空间中的那个记录版本号的文本文件,读取最新版本号,再读取本地配置文件中的版本号,对比如果不一样,则运行升级程序,退出主程序,升级程序根据配置文件中的升级包地址下载升级包,运行升级包,由于是自解压,则自动更新文件。在制作自解压升级包的时候需要设置下。详细不明的可以再问。
加我QQ:187326575
我这有用邮箱来更新的。只需要邮箱就行了,有新版本发个邮件(附件为更新文件)到设定邮箱,客户端会自动更新的。
⑵ 跪求易语言检查更新或自动更新源码!
更新源码没有,不过有原理。
1、在自己做的软件做一个标记,现版本是多少。
2、有信息服务器。
3、在主程序每次启动的时,连接服务器获得信息。(注意:服务器端的路由器一定要留端口,需要在路由器上设置。)
4、获得信息,判断是否为最新版本,如果否,启动更新程序,更新程序启动秒后延迟几结束主程序。
5、下载指定服务器的更新文件,并且覆盖原主程序及系统文件。
以后的都很简单了,希望能给你带来帮助,然后,说一句。少看别人的源码,别人的东西始终是别人的东西。对于新手来说,少看别人的源码,不然你写出来的东西都是别人写过东西。如果是那样你觉得还有意义么?
⑶ 易语言做的软件怎么实现自动更新最好把源码发下。
首先声明:此源码并非本人写出,在此感谢写出此代码的原作者。
我也是通过此源代码,明白的自动更新原理。
好像,你没有给分哦。下次可不要这么小气了
⑷ 要易语言自动更新源码
要易语言自,动更新源码?(这个,你去找吴涛要要看,不知道他给你不……)
要自动更新,易语言源码?(这个……进度下载模块,写成DLL更新的时候调用你自己研究去吧)
———————————————我是分割线《念青&卓越》———————————————
.版本2
.程序集程序集1
.子程序_启动子程序,整数型,,请在本子程序中放置易模块初始化代码
_临时子程序() '在初始化代码执行完毕后调用测试代码
返回(0) '可以根据您的需要返回任意数值
.子程序_临时子程序
'本名称子程序用作测试程序用,仅在开发及调试环境中有效,编译发布程序前将被系统自动清空,请将所有用作测试的临时代码放在本子程序中。***注意不要修改本子程序的名称、参数及返回值类型。
.子程序下载进度事件模板,,公开
.参数下载文件名,文本型
.参数文件尺寸,整数型,,Bit
.参数下载速度,整数型,,KB/S
.参数下载进度,整数型
.子程序下载状态事件模板,,公开
.参数欲读入网址,文本型
.参数错误代码,整数型
.参数状态文本,文本型
.参数下载进度,整数型
———————————————我是分割线《念青&卓越》———————————————
.版本2
.程序集HTTP进度下载类,,公开
.程序集变量XML对象,对象
.程序集变量已初始化,逻辑型
.程序集变量集_欲读入网址,文本型
.程序集变量集_引用页,文本型
.程序集变量集_数据块超时,整数型
.程序集变量集_错误信息,文本型
.程序集变量集_保存文件名,文本型
.程序集变量状态_开始下载,逻辑型
.程序集变量集_已下载尺寸,整数型
.程序集变量集_下载进度事件指针,整数型
.程序集变量集_下载状态事件指针,整数型
.程序集变量集_文件总尺寸,整数型
.程序集变量集_停止,逻辑型
.程序集变量集_数据块尺寸,整数型
.子程序_销毁,,,当基于本类的对象被销毁前,此方法会被自动调用
清除()
.子程序清除,,公开,清空HTTP下载类
停止下载()
XML对象.清除()
连续赋值(假,已初始化,状态_开始下载,集_停止)
连续赋值(0,集_数据块超时,集_已下载尺寸,集_下载进度事件指针,集_下载状态事件指针,集_文件总尺寸,集_数据块尺寸)
连续赋值(“”,集_保存文件名,集_错误信息,集_引用页,集_欲读入网址)
.子程序初始化,逻辑型,公开,当基于本类的对象被创建后,此方法会被自动调用
.参数下载进度事件指针,子程序指针,可空
.参数下载状态事件指针,子程序指针,可空
.判断开始(已初始化=假且状态_开始下载=假)
XML对象.创建(“MSXML2.ServerXMLHTTP”,)
.判断开始(XML对象.是否为空())
返回(假)
.默认
已初始化=真
状态_开始下载=假
集_下载进度事件指针=到数值(下载进度事件指针)
集_下载状态事件指针=到数值(下载状态事件指针)
集_文件总尺寸=0
集_停止=假
集_数据块尺寸=#数据块尺寸
集_数据块超时=集_数据块尺寸÷#最低网速
返回(真)
.判断结束
.默认
返回(假)
.判断结束
.子程序置缓冲区尺寸,,公开,如果不用本方法设置缓冲区大小,将默认为10KB。不要过小,太小了会因读写次数增多而影响速度;过大了则等待数据的时间会过长;应根据网络状态合理设置。
.参数缓冲区尺寸,字节型,,单位为KB
.如果真(已初始化且状态_开始下载=假)
.如果真(缓冲区尺寸=0)
缓冲区尺寸=4
.如果真结束
集_数据块尺寸=缓冲区尺寸×1024
集_数据块超时=集_数据块尺寸÷#最低网速
.如果真结束
.子程序Http网址,,公开
.参数欲读入网址,文本型
.参数引用页,文本型,可空
.如果真(已初始化且状态_开始下载=假)
集_欲读入网址=欲读入网址
集_引用页=引用页
.如果真结束
.子程序置保存文件名,逻辑型,公开
.参数文件名,文本型
.如果真(已初始化且状态_开始下载=假)
集_保存文件名=文件名
返回(真)
.如果真结束
返回(假)
.子程序开始下载,逻辑型,公开
.局部变量字节集数据,字节集
.局部变量数据块开始下载时间,整数型
.局部变量文件号,整数型
.局部变量网页文件读写及尺寸信息,文本型
.局部变量temp,整数型
.局部变量当前读写位置,整数型
.局部变量下载速度,整数型
.局部变量已下载的百分比,整数型
.局部变量集_下载起点,整数型
.局部变量status,整数型
.如果真(已初始化=假)
集_错误信息=“没有初始化”
发送状态事件()
返回(假)
.如果真结束
.如果真(状态_开始下载)
集_错误信息=“正在下载中……”
发送状态事件()
返回(假)
.如果真结束
文件号=打开文件(集_保存文件名,#改写,#禁止读写)
.如果真(文件号=0)
集_错误信息=“本地文件无法打开”
发送状态事件()
返回(假)
.如果真结束
集_下载起点=取文件长度(文件号)
集_已下载尺寸=集_下载起点
移到文件尾(文件号)
状态_开始下载=真
集_错误信息=“”
集_停止=假
.循环判断首()
XML对象.方法(“open”,“GET”,集_欲读入网址,真)
XML对象.方法(“setRequestHeader”,“Referer”,集_引用页)
XML对象.方法(“setRequestHeader”,“Accept”,“*/*”)
XML对象.方法(“setRequestHeader”,“User-Agent”,“Mozilla/4.0(compatible;MSIE5.00;Windows98)”)
XML对象.方法(“setRequestHeader”,“Range”,“bytes=”+到文本(集_下载起点)+“-”+到文本(集_下载起点+集_数据块尺寸-1))
XML对象.方法(“setRequestHeader”,“Content-Type”,“application/octet-stream”)
XML对象.方法(“setRequestHeader”,“Pragma”,“no-cache”)
XML对象.方法(“setRequestHeader”,“Cache-Control”,“no-cache”)
XML对象.方法(“send”,)
数据块开始下载时间=取启动时间()
.判断循环首(XML对象.读数值属性(“readyState”,)≠4)
.如果真(取启动时间()-数据块开始下载时间>集_数据块超时)
XML对象.方法(“abort”,)
集_错误信息=“数据下载超时,建议重试。”
关闭文件(文件号)
发送状态事件()
清除下载信息()
返回(假)
.如果真结束
.如果真(集_停止)
集_错误信息=“用户中止了下载”
关闭文件(文件号)
发送状态事件()
清除下载信息()
返回(假)
.如果真结束
XML对象.逻辑方法(“waitForResponse”,1000)
.判断循环尾()
'检测状态
status=XML对象.读数值属性(“status”,)
.如果真(status>299且status≠416) 'http出错
集_错误信息=XML对象.读文本属性(“statusText”,)
跳出循环()
.如果真结束
.如果真(status≠206且status≠416) '服务器不支持断点续传
集_错误信息=“服务器不支持断点续传!”
跳出循环()
.如果真结束
写出字节集(文件号,XML对象.读属性(“responseBody”,).取字节集())
网页文件读写及尺寸信息=XML对象.文本方法(“getResponseHeader”,“Content-Range”)
.判断开始(网页文件读写及尺寸信息=“”)
集_错误信息=“文件长度未知!”
.默认
.如果真(集_文件总尺寸=0)
集_文件总尺寸=到数值(取文本右边(网页文件读写及尺寸信息,取文本长度(网页文件读写及尺寸信息)-倒找文本(网页文件读写及尺寸信息,“/”,,假)))
.如果真结束
当前读写位置=到数值(取文本右边(网页文件读写及尺寸信息,取文本长度(网页文件读写及尺寸信息)-倒找文本(网页文件读写及尺寸信息,“-”,,假)))
集_已下载尺寸=集_已下载尺寸+当前读写位置-集_下载起点
.如果真(集_已下载尺寸>集_文件总尺寸)
集_已下载尺寸=集_文件总尺寸
.如果真结束
集_下载起点=当前读写位置+1
已下载的百分比=集_已下载尺寸×100÷集_文件总尺寸
.判断结束
temp=取启动时间()-数据块开始下载时间
下载速度=集_数据块尺寸÷1.024÷temp
.如果真(集_下载进度事件指针≠0)
CallWindowProc(集_下载进度事件指针,集_保存文件名,集_文件总尺寸,下载速度,已下载的百分比)
.如果真结束
.如果真(集_文件总尺寸=集_已下载尺寸)
集_错误信息=“下载完毕”
跳出循环()
.如果真结束
.如果真(status=416)
集_错误信息=“下载完毕”
跳出循环()
.如果真结束
.循环判断尾(集_停止=假)
关闭文件(文件号)
发送状态事件()
清除下载信息()
返回(集_错误信息=“下载完毕”)
.子程序清除下载信息
连续赋值(假,状态_开始下载,集_停止)
连续赋值(0,集_已下载尺寸,集_文件总尺寸)
.子程序发送状态事件
.如果真(集_下载状态事件指针≠0)
CallWindowProc2(集_下载状态事件指针,集_欲读入网址,XML对象.读数值属性(“status”,),集_错误信息,集_已下载尺寸×100÷集_文件总尺寸)
.如果真结束
.子程序停止下载,,公开
.如果真(状态_开始下载)
集_停止=真
XML对象.方法(“abort”,)
.如果真结束
———————————————我是分割线《念青&卓越》调用系统API—————————
.版本2
.DLL命令CallWindowProc,整数型,"user32.dll","CallWindowProcA"
.参数程序指针,整数型
.参数下载文件名,文本型,传址
.参数文件尺寸,整数型
.参数下载速度,整数型
.参数下载进度,整数型
.DLL命令CallWindowProc2,整数型,"user32.dll","CallWindowProcA"
.参数程序指针,整数型
.参数欲读入网址,文本型,传址
.参数状态代码,整数型
.参数状态文本,文本型
.参数下载进度,整数型
———————————————我是分割线《念青&卓越》常量—————————————
.版本2
.常量数据块尺寸,"10240",,10K/块
.常量最低网速,"0.1",,KB/S
实例效果:
效果不是很好。也可以直接替换源文件。不使用窗口后台静默下载等等等等……楼主自由发挥吧!<念青&卓越>
⑸ 易语言制作的软件怎么实现自动更新最好把源码发下。
你好,这个问题很好解决的。
首先需要一个FTP虚拟空间,或者一台外网远程服务器,用来判断当前版本是否为最新。
类似这样的源码网上有很多。
请直接网络搜索“易语言自动更新源码” 即可找到许多例程,PS:搜索出来的第二个、第三个都是你想要的源码哦。
希望我的回答对你有所帮助!Kiss灬小猪
⑹ 易语言pp助手的更新源码 最近想做一个更新的功能,感觉pp助手(pc版)的自动更新很不错,所以要来
这....太简单了吧。。。。。
⑺ 易语言电脑时间更新源码
把前面自动更新大个勾就好了。
⑻ 易语言 强制自动更新源码
这个完全可以,给你个思路
首先判断本地的版本号是否与服务器版本号一样,不一样就更新
美有分,没心思写代码给你
⑼ 易语言制作的软件怎样才能自动更新要源码!!!
这个问题我已经回答别人很多次了,你就不能在网络里查一下?
总是直接提问要源码,害得我们这些回答问题的,一次又一次回答重复性的答案。
下面的地址是我回答别人给的源码,你自己去下载研究吧。
http://..com/question/938243904325825132
⑽ 软件自动更新求帮忙写源码
不行,官方没开通道给普通人,下个助手吧。