c#关于实现软件更新的问题
各位大侠好,本人需要做一个软件自动更新的程序,在做之前粗略地看了网上的一些文档之后,自己整理了思路,希望各位帮我看看:读取本地xml文件,得到当前软件版本,再去读取服务器上的xml文件,比较版本(
这里如何读取服务器上的xml文件?假设服务器是局域网内的其他电脑)如果版本不同,就去下载所需要的文件(
这里要下载的文件又是哪几个?下载文件的方法如何实现?需要iis什么的吗?)希望大侠们能指点一二
------解决方案--------------------要下载的文件:exe执行文件、和相关的dll文件,如:你的数据层集dal.dll,业务处集bll.dll等,只要关联的都再者。想zip.dll这些压缩文件就不要下载了,因为你的项目没有关联到。
不用iis,iis是网站发布才需要用到。
如果你想做得更好,最好有个后台上传这些文件的压缩包、修改版本号信息等。这样你就不用没次都自己去修改版本号和登录服务器上传关联文件了。
------解决方案--------------------以前有人发过一个,你自己参照的看下呗。你如果要用Http方式下载,就在IIS上建一个路径指向你服务器存放文件的文件夹。所谓下载方式很灵活的啦。要是局域网内,只要有权限,完全可以直接File.Copy的方式来更新。
http://bbs.csdn.net/topics/390400125
------解决方案--------------------
我建议你想手动上传文件到服务器,手动修改xml文件版本号,看看能不能更新先,如果能再做成动态的。
------解决方案--------------------你找的答案可以嘛,我以前就是这样做的。
你的问题:
1. 怎么跟服务器沟通? 用Web Service, WCF挺好的。可以用IIS来host你的web service, 也可以其他方式。
2. 更新哪些文件?这个你自己决定了,按需更新。
------解决方案--------------------(1)首先要弄明白软件更新的机制。更新的话,我们在更新一部分软件的时候大部分是不用再重新安装的,只需点击更新,就可以了,这个更新的exe软件,应该是替换的原来程序中的dll,这样实现的版本更新。您的是这样的不?
------解决方案--------------------
以前有人发过一个,你自己参照的看下呗。你如果要用Http方式下载,就在IIS上建一个路径指向你服务器存放文件的文件夹。所谓下载方式很灵活的啦。要是局域网内,只要有权限,完全可以直接File.Copy的方式来更新。
http://bbs.csdn.net/topics/390400125
我在网上下载了一个demo,他的xml文件是放在 http://iamsheep.net/update/modeupdate.xml 上的,这个应怎么弄呢?我要怎么弄才能把xml文件放到其他所谓服务器上去呢?我都不知道怎么百度这个问题,大侠,求解啊!!!
你IIS建一个虚拟目录,指向你的文件夹啊。