当前位置: 代码迷 >> C# >> Winform 自动更新,用户程序栏卸载程序处置
  详细解决方案

Winform 自动更新,用户程序栏卸载程序处置

热度:446   发布时间:2016-05-05 03:28:27.0
Winform 自动更新,用户程序栏卸载程序处理
最近做一个winform程序,打包后安装时会在用户电脑的程序栏中生成对应的卸载程序,现在这个winform做了个自动更新,就是通过本地xml和服务器xml作对比替换本地的exe文件这种方式,那么问题来了,之前做的卸载程序再卸载时就卸载不了了,请问这有没有什么解决方法呢
------解决思路----------------------
更新了uninstall也没用,因为系统在安装的时候时会将安装信息写入到注册表HKEY_CLASS下,每个应用程序都会有一个ProductCode(GUID)对应的,所以你还得将原来的GUID也改掉
clickOnce就是利用它来检测机器上是否已安装过相同的程序。如果你将productCode换掉,你会发现,它不会再提示已安装过,而是当作新的程序来安装的
与此对应的,还有一个UpgradeCode用来检测升级用的

你可以先运行之间的uninstall,再安装新版
如果你嫌麻烦,就用clickOnce吧,或者弄成“绿色版”,就是不使用windows installer来安装,也就不会写入安装数据。这意味着当然控制面板卸载里也看不到这个程序
  相关解决方案