一、从服务器载得文件的方式:
1、HTTP//如果用户反编译时,会看到下载地址,对安全不利
2、FTP//如果用户反编译时,会看到下载地址,对安全不利
3、SOCKET//比较复杂
二、升级方式:
1、比较服务中SETUP.EXE的版本与本地程序.EXE的版本,需要更新则下载,下载完自动运行SETUP.EXE进行更新。
这样做的缺点:可能打包成SETUP.EXE里的有些文件并没有改变,但重复下载且安装。且每次打包时忘记变化版本信息,用户则得不到更新。
这样做的优点:只比较一个文件的版本,方便比较。
2、比较服务中,与本程序相关的所有文件的大小,发现改变的,下载改变的文件,并覆盖本地的文件。
这样做的缺点:有些EXE文件,如果你改动不大,生成EXE后,文件大小不会改变(经测试确实如此),这样做会得不到更新。
这样做的优点:只更新文件大小变化的文件,减小网络流量和更新时间。
3、比较服务中,与本程序相关的所有文件的最后修改日期,发现改变的,下载改变的文件,并覆盖本地的文件。
这样做的缺点:EXE文件,重新生成最后修改日期会变化,下载到本地,最后修改日期不会被本地机器修改,这样可以得到更新,但非EXE的文件,如:JPG,DOC,XSL等,下载到本地后,本机会修改为当时的时间,所以造成本地的修改时间比服务器相应文件的修改日期还要更新,所以第二次就不会得到更新。且有些服务器的文件时间到本地处理时,会舍弃秒,而造成判断不准。
这样做的优点:只更新最后修改时间变化的文件,减小网络流量和更新时间。
4、对比较EXE、DLL有版本的文件,比较版本,其它文件则比较大小或最后修改时间。
缺点:同样是,修改后忘了改版本号,用户则得不到更新。
5、在服务器中,下载的区域做个INI文件,对修改后的文件在INI文件中做标示,用户先比较这两个INI文件,相同的部分,不下载,不同的则下载。
缺点:对变化的文件,每次还得在INI里做标记,如果有一次忘了,则...
优点: 比较简单,减小网络流量和更新时间.我目前能想到的方式就是这些,不知哪种方式最好,最利于维护\操作.我现在用得是FTP,比较文件大小.
1、HTTP//如果用户反编译时,会看到下载地址,对安全不利
2、FTP//如果用户反编译时,会看到下载地址,对安全不利
3、SOCKET//比较复杂
二、升级方式:
1、比较服务中SETUP.EXE的版本与本地程序.EXE的版本,需要更新则下载,下载完自动运行SETUP.EXE进行更新。
这样做的缺点:可能打包成SETUP.EXE里的有些文件并没有改变,但重复下载且安装。且每次打包时忘记变化版本信息,用户则得不到更新。
这样做的优点:只比较一个文件的版本,方便比较。
2、比较服务中,与本程序相关的所有文件的大小,发现改变的,下载改变的文件,并覆盖本地的文件。
这样做的缺点:有些EXE文件,如果你改动不大,生成EXE后,文件大小不会改变(经测试确实如此),这样做会得不到更新。
这样做的优点:只更新文件大小变化的文件,减小网络流量和更新时间。
3、比较服务中,与本程序相关的所有文件的最后修改日期,发现改变的,下载改变的文件,并覆盖本地的文件。
这样做的缺点:EXE文件,重新生成最后修改日期会变化,下载到本地,最后修改日期不会被本地机器修改,这样可以得到更新,但非EXE的文件,如:JPG,DOC,XSL等,下载到本地后,本机会修改为当时的时间,所以造成本地的修改时间比服务器相应文件的修改日期还要更新,所以第二次就不会得到更新。且有些服务器的文件时间到本地处理时,会舍弃秒,而造成判断不准。
这样做的优点:只更新最后修改时间变化的文件,减小网络流量和更新时间。
4、对比较EXE、DLL有版本的文件,比较版本,其它文件则比较大小或最后修改时间。
缺点:同样是,修改后忘了改版本号,用户则得不到更新。
5、在服务器中,下载的区域做个INI文件,对修改后的文件在INI文件中做标示,用户先比较这两个INI文件,相同的部分,不下载,不同的则下载。
缺点:对变化的文件,每次还得在INI里做标记,如果有一次忘了,则...
优点: 比较简单,减小网络流量和更新时间.我目前能想到的方式就是这些,不知哪种方式最好,最利于维护\操作.我现在用得是FTP,比较文件大小.
解决方案 »
- 谁有词频表啊
- 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用
- 内存泄漏问题
- 在多声卡系统中,如何用mciSendCommand()/mciSendString() 函数将音乐播放给指定的声卡
- 关于非模式对话框的重绘问题
- 为啥偶的托盘右键菜单老是“应用程序错误”!!
- 在CSocket中,server端用new生成了一些连接用的socket,在客户端关闭时这些生成的socket还有必要delete调吗。
- 如何转换文件名路径为可以使用的文件路径?新手提问
- 请问怎样才能改变应用程序的标题 ??
- 用windows installer中的工具orac作了一个.msi文件,执行是出现错误2729和2502,应该怎末办呢
- 在ListCtr中如何使奇偶不同行背景颜色不同?像多财务软件那样
- 如何用VC保存Powerpoint2003文档
非EXE\DLL的文件,如何做?因为这种文件没有版本信息?
如果是版本更新比较频繁的,比如游戏啊什么的,这种就不适合更新exe。
到底用:
一个SETUP.EXE
比较文件大小
比较EXE,DLL文件版本
比较文件最后修改时间
哪种呢?
这样,只要有不同了,就可以更新了。
问题是,如果管理员在服务器端误操作,把一个(批)旧的文件放进去了……
或者你在升级服务器的时候,就执行一个保护机制。