易语言软件自动更新并替换自身文件并运行

易语言软件自动更新并替换自身文件并运行,第1张

这里提供给你一个思路

首先可以做一个更新的程序跟你要的主程序

主程序运行之后开始判断版本是否需要更新

当需要更新的时候才去调用更新程序进行更新、

更新程序具有读写文件以及杀死主程序进程的权限

这样就避免了程序更新时自身锁定不可写的问题

注:这里的更新程序跟主程序不是子程序的关系,而是两个相互独立的程序

代码木有..

思路一堆..

如果您的程序想删除原本的..

友情提示.看看百度影音的做法吧.

直接新建了一个文件夹.

删除原本的文件夹..

这个是比较极端的

您可以尝试这次的更新程序下载下来2个EXE.一个是主程序_TEMP.EXE一个是UPDATE.EXE

然后执行UPDATE.EXE

关闭自己

Update.EXE

删除原本的内容

更改主程序_TEMP.EXE

为主程序.exe

这下就把原本的程序完美替换了..

/*切割*/

但是以前见过单文件自己更新自己的,不知道是否是经过打包

但文件自己更新自己是这样子滴...动态生成一个BAT...然后执行他就好了..执行完了BAT自行删除..这个就很简易了..

但是您要考虑到BAT要是删除失败..可就比较恶心了

如果您不关心原本的程序.

或不关心原本程序的废除DALL.冗余的文件

那么就简单了..

但是也有前提:

前提是你的主程序.EXE

也就是你执行更新这一段代码的EXE程序自己不更新.否则由于进程锁无法更新

其实也能仿.

例如..下载的新的EXE名字改一下..生成BAT删除原本EXE更改名字.BAT自行删除.

/*再割..*/

您说的自己更新自己是CLICKONCE吧..

他是微软自己实现的.通过WINDOWS的一个组件

前提当然也就是您说的..打包了.

而且整个打包方式都不同..

你可以去腾讯电脑管家的电脑诊所看看

我记得上次电脑出现问题需要解决的时候看到DLL丢失修复这项了

管家管理页——工具箱——电脑诊所——DLL丢失——看里面有没有跟你一样的情况——有的话选择立即修复就可以了


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12070267.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存