C#自动更新,主程序将自己删除~~怎么实现? 5

我现在就是已经实现将更新的.xml文件和.exe文件下载到当前应用程序执行目录下的temp(临时目录),我现在就是像将这俩文件替换掉当前应用程序并重新启动,如何实,就是主... 我现在就是已经实现将更新的.xml文件和.exe文件下载到当前应用程序执行目录下的temp(临时目录),我现在就是像将这俩文件替换掉当前应用程序并重新启动,如何实,就是主程序如何删除自己,采用多线程如何实现~~ 展开
 我来答
百度网友34a94f061
推荐于2018-03-19 · TA获得超过103个赞
知道答主
回答量:43
采纳率:0%
帮助的人:71.4万
展开全部
主程序自己删除不了自己,在运行着也不能被别人删除,那么需要怎么做呢!

给你一个思路:
1.你的主程序和你的更新程序需要是两个不同exe。就是说你的主程序和更新程序不是一起的。需要单独做一个更新程序。然后放到主程序目下,供调用。
2.在主程序启动时或者手动执行更新,更新之前需要判断是否有更新。
3.如果有更新,那么这个时候下载更新。(下载更新,可以在主程序也可以在更新程序做,最好由更新程序做)
4.下载好之后,启动 更新程序exe。
启动更新程序的方法 Process.Start("D:\\我的更新程序.exe"); //这里可以参数
启动之后,当前主程序Application.Exit()。
5.更新程序,进行更新操作(下载到临时目录的dll等文件,复制并覆盖到你的主程序目下)
6.更新完成。关闭更新程序,自动启动 主程序。
启动主程序的方法 Process.Start("D:\\我的程序.exe");
当前更新程序Application.Exit()。

7.这就可以实现更新完成了。并且启动了更新后的主程序。
具体实现就看你了。不明白在问把。
l7722526
2017-06-13 · TA获得超过2.7万个赞
知道大有可为答主
回答量:2.8万
采纳率:84%
帮助的人:3594万
展开全部
主程序自己删除不了自己,在运行着也不能被别人删除,那么需要怎么做呢!

给你一个思路:
1.你的主程序和你的更新程序需要是两个不同exe。就是说你的主程序和更新程序不是一起的。需要单独做一个更新程序。然后放到主程序目下,供调用。
2.在主程序启动时或者手动执行更新,更新之前需要判断是否有更新。
3.如果有更新,那么这个时候下载更新。(下载更新,可以在主程序也可以在更新程序做,最好由更新程序做)
4.下载好之后,启动 更新程序exe。
启动更新程序的方法 Process.Start("D:\\我的更新程序.exe"); //这里可以参数
启动之后,当前主程序Application.Exit()。
5.更新程序,进行更新操作(下载到临时目录的dll等文件,复制并覆盖到你的主程序目下)
6.更新完成。关闭更新程序,自动启动 主程序。
启动主程序的方法 Process.Start("D:\\我的程序.exe");
当前更新程序Application.Exit()。

7.这就可以实现更新完成了。并且启动了更新后的主程序。
具体实现就看你了。不明白在问把。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
samismiling
2017-06-13 · 知道合伙人软件行家
samismiling
知道合伙人软件行家
采纳数:1340 获赞数:5602

向TA提问 私信TA
展开全部
不可能同步实现,要设计为异步的。
1、更新和主程序的exe是两个exe
2、主程序启动时,检测有没有更新,有的话,打开更新exe,关掉自己
ps,此处,需要判断更新exe是否有新版本,如果有,则下载新的,覆盖更新exe(此时可以成功,因为个更新exe没有启动)
3、执行更新(此时如果主程序exe有变化,可以覆盖成功,因为它没启动)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
卷人2f
2013-04-28 · TA获得超过1352个赞
知道小有建树答主
回答量:1044
采纳率:50%
帮助的人:717万
展开全部
主程序删除自己?我的理解应该是说,先对比,然后把要更新的程序集和其它信息更新下来,然后再启动程序。你想的删除自己应该是退出更新程序,启动应用程序吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
凉笙叹双鱼
2017-06-13
知道答主
回答量:14
采纳率:0%
帮助的人:2.8万
展开全部
做一个升级的程序,在详细这里写不下了。 检测到更新,下载下来。然后用你写的更新程序kill主程序。然后替换文件,在启动主程序
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式