想法挺好的啊,那就做吧。
关键是没有做过 你做过没有
N多年前做过winform,给你个思路
1,服务端提供更新程序下载,比如一个ftp地址(这个看你是要做增量还是全量更新)
2,客户端启动时候检查更新发布(这里可以使用版本号区分,也可以订阅发布消息等等方式,反正能接收到更新就好),如果有更新发布则链接ftp下载更新,完成后再启动;如果无则启动
socket就可以搞定,当然ftp也行
直接clickonce方便。下载dll模块的方法最好不用,如果是安装的会有模块信息,届时会game over。
我现在这边是这样的,写一个控制的服务,服务是周期的扫描MYSQL数据库,如果要更新软件的时候就把更新的软件放在共享服务器,然后在mysql数据库对应位置给个信号,然后控制的服务得到信息就把winform软件关闭,去指定位置复制程序,然后再打开!而对于mysql 上的这个信号什么时候关闭,主要是看这个服务的更新时间!我这边是有对服务有个在mysql更新软件时间,保证现场的服务能很好的运行。如果服务的更新时间已经在你给信号更新软件之后了,就可以把这个信号关闭!
我觉得最简单实用的更新,就是我们现在看大多数据软件用的,手动更新(因为并不是所有使用者都喜欢自动 更新的,除非是一些BUG上的更新)。
点击-“检查新版本”,无论是否有更新,都可由用户选择可更,可不更