今天干了一件特SB的事。给主程序添加了一个自动更新功能,在VS里测试的时候一切正常,可以正常出现“新版本”提示窗口,正常启动更新程序下载文件、更新文件,这些步骤都没问题。但是诡异的是:按理说,我的更新程序在更新完成后并没有去修改本地的版本信息,也就是说主程序再次启动时候仍然会去检查系统版本,然后发现版本可以更新,然后仍然会出现更新提示。但是,居然没有出现!真是太诡异了。然后我就开始各种抓瞎。先是觉得更新后启动的主程序并不是指定位置的主程序,然后又怀疑主窗体的Load事件是不是有问题,因为检查更新的工作在Load事件中异步进行的。总之就是各种怀疑,怀疑到我觉得自己难道水平渣到这种程度?后来终于意识到,不是我水平有多渣,而是我太SB,问题出在下载的更新包里打包的主程序可执行文件。打包的可执行文件是一个旧版的文件,不带检测版本的功能,所以更新后启动的主程序压根就没有更新的功能!!!(貌似算是个版本回滚)我在这抓耳挠腮找原因,殊不知是我自己太SB。
——是为记
你可长点心吧!!!