15 个解决方案
#1
首先你要在程序中加一个功能,每次启动前 先判断当前版本是否为最新版本,如果是正常启动,如果不是,从服务器下载最新的动态库将现有的库给替换。这样就可以了吧。
#2
给个简单的思路:做个启动程序,启动主程序前先到服务器检测是否有新版本,有则下载覆盖之;没有就直接启动主程序。
这里有个文档和源码都齐全的升级组件,你可以参考下 http://download.csdn.net/detail/vb763305825/5305468
这里有个文档和源码都齐全的升级组件,你可以参考下 http://download.csdn.net/detail/vb763305825/5305468
#3
谢谢指教,不过我更需要一个比较具体的例子
#4
具体方案,你就用微软的ClickOnce部署吧。
#5
你要的到底是方案还是源码?
方案很简单,两个程序,一个主程序,一个升级程序,先启动哪个都无所谓.
然后判断版本,下载.
下载方式可以很多种,socket传输,http下载,数据库读取文件,或者共享目录直接COPY,根据环境选择一种
直接求 DEMO,每个人实现方式不一样,也不能保证在你的应用中合适.
问题并不复杂,把问题分解开,哪里不会用查下就行了.
想不劳而获,直接拿到源码改都不改就用,不现实.
#6
具体方案,你就用微软的ClickOnce部署吧。
这个是实行方法里面比较简单的
#7
程序启动时和将本地版本和服务器版本进行比对,如果没有更新版本就直接启动程序;如果有更新版本则先启动更新程序,从服务器获取更新文件将本地文件覆盖即可,更新成功之后自动启动应用程序。如果你还想做得更好一点的话,可以再程序中加一个检查更新的按钮,可以随时检查是否有更新版本。方案是这样,源码得自己写。
#10
楼上都说的很清楚了,两个进程,一个主进程,一个升级进程,升级进程负责判断本地程序版本v1跟服务器版本v2,如果v2>v1,就从服务端下载更新包到本地,然后解压覆盖即可,很简单,自己尝试着写写吧
#11
文件要覆盖的目录可以根据你的主进程名称到注册表里找
#12
可以用iis的下载来实现呀,我是做过,看上去笨一些,但是很实用很好用的。原理大家都知道就是判断文件日期然后替换即可,把握这个思路其实只要做一个判断->下载->替换->启动的程序就可以了,专门做一个下载器,伪装成程序的主入口,每次进入都点击,但是内部是一个判断是否有更新的逻辑,下载完成后再隐藏当前窗体然后启动主程序窗口即可,前提是你的程序得做成dll单个模块的才好一些,如果只是一个单个的exe的话也一样的原理,每次只要下载一个更新文件即可。
#13
我的更新程序是写在主exe里的。但是更新文件需要用Inner setup做成安装包。判断完本地版本和服务器版本后 ,主程序调下载安装包,调用安装包然后关掉自己就行了。
这样避免了升级进程的存在,麻烦打是每次都要打包。
这样避免了升级进程的存在,麻烦打是每次都要打包。
#14
moeny 多多 就有人给你了
#15
顶,我也需要这个
#1
首先你要在程序中加一个功能,每次启动前 先判断当前版本是否为最新版本,如果是正常启动,如果不是,从服务器下载最新的动态库将现有的库给替换。这样就可以了吧。
#2
给个简单的思路:做个启动程序,启动主程序前先到服务器检测是否有新版本,有则下载覆盖之;没有就直接启动主程序。
这里有个文档和源码都齐全的升级组件,你可以参考下 http://download.csdn.net/detail/vb763305825/5305468
这里有个文档和源码都齐全的升级组件,你可以参考下 http://download.csdn.net/detail/vb763305825/5305468
#3
首先你要在程序中加一个功能,每次启动前 先判断当前版本是否为最新版本,如果是正常启动,如果不是,从服务器下载最新的动态库将现有的库给替换。这样就可以了吧。
谢谢指教,不过我更需要一个比较具体的例子
#4
具体方案,你就用微软的ClickOnce部署吧。
#5
首先你要在程序中加一个功能,每次启动前 先判断当前版本是否为最新版本,如果是正常启动,如果不是,从服务器下载最新的动态库将现有的库给替换。这样就可以了吧。
谢谢指教,不过我更需要一个比较具体的例子
你要的到底是方案还是源码?
方案很简单,两个程序,一个主程序,一个升级程序,先启动哪个都无所谓.
然后判断版本,下载.
下载方式可以很多种,socket传输,http下载,数据库读取文件,或者共享目录直接COPY,根据环境选择一种
直接求 DEMO,每个人实现方式不一样,也不能保证在你的应用中合适.
问题并不复杂,把问题分解开,哪里不会用查下就行了.
想不劳而获,直接拿到源码改都不改就用,不现实.
#6
具体方案,你就用微软的ClickOnce部署吧。
这个是实行方法里面比较简单的
#7
程序启动时和将本地版本和服务器版本进行比对,如果没有更新版本就直接启动程序;如果有更新版本则先启动更新程序,从服务器获取更新文件将本地文件覆盖即可,更新成功之后自动启动应用程序。如果你还想做得更好一点的话,可以再程序中加一个检查更新的按钮,可以随时检查是否有更新版本。方案是这样,源码得自己写。
#8
#9
#10
楼上都说的很清楚了,两个进程,一个主进程,一个升级进程,升级进程负责判断本地程序版本v1跟服务器版本v2,如果v2>v1,就从服务端下载更新包到本地,然后解压覆盖即可,很简单,自己尝试着写写吧
#11
文件要覆盖的目录可以根据你的主进程名称到注册表里找
#12
可以用iis的下载来实现呀,我是做过,看上去笨一些,但是很实用很好用的。原理大家都知道就是判断文件日期然后替换即可,把握这个思路其实只要做一个判断->下载->替换->启动的程序就可以了,专门做一个下载器,伪装成程序的主入口,每次进入都点击,但是内部是一个判断是否有更新的逻辑,下载完成后再隐藏当前窗体然后启动主程序窗口即可,前提是你的程序得做成dll单个模块的才好一些,如果只是一个单个的exe的话也一样的原理,每次只要下载一个更新文件即可。
#13
我的更新程序是写在主exe里的。但是更新文件需要用Inner setup做成安装包。判断完本地版本和服务器版本后 ,主程序调下载安装包,调用安装包然后关掉自己就行了。
这样避免了升级进程的存在,麻烦打是每次都要打包。
这样避免了升级进程的存在,麻烦打是每次都要打包。
#14
moeny 多多 就有人给你了
#15
顶,我也需要这个