Installation .NET程序一直在安装旧版本

Installation .NET程序一直在安装旧版本,installation,version,uninstallation,Installation,Version,Uninstallation,我在使用.NET程序时遇到了一个相当烦人和耗时的问题。我们的客户都使用我们在VisualStudio2005(运行.NETFramework 3.5)中编写的软件。应用程序是一个安装项目,它从另一个项目获取其文件。问题是,每当我更改代码并将新版本上传到服务器时,某些pc都不会得到更改。以下是我们升级的步骤: 使用“添加/删除程序”卸载旧软件 重新启动机器 转到我们的网站并运行setup.msi文件 安装新软件 运行应用程序 问题是,当他们运行应用程序时,他们仍然得到旧版本。它只发生在没有特定模式

我在使用.NET程序时遇到了一个相当烦人和耗时的问题。我们的客户都使用我们在VisualStudio2005(运行.NETFramework 3.5)中编写的软件。应用程序是一个安装项目,它从另一个项目获取其文件。问题是,每当我更改代码并将新版本上传到服务器时,某些pc都不会得到更改。以下是我们升级的步骤:

  • 使用“添加/删除程序”卸载旧软件
  • 重新启动机器
  • 转到我们的网站并运行setup.msi文件
  • 安装新软件
  • 运行应用程序

  • 问题是,当他们运行应用程序时,他们仍然得到旧版本。它只发生在没有特定模式的某些pc上。我肯定这不是互联网缓存,因为一个同事直接通过ftp复制了msi文件。我们通过将安装的目录(包括清单、部署、exe等)复制到他们的电脑上来解决这个问题。这似乎可行,但不必要。我被难住了。我什么都试过了。我不能重复这个问题——设置对我来说很好;即使我有旧版本,它也会升级。Windows是否以某种方式缓存设置或我应该知道的内容?请帮忙:)谢谢

    该问题可能与下载端的chaching有关。如果是我,我会确保msi在其名称中包含版本号(例如MyAppInstaller_1.1.3.msi),以确保在下载时不会发生任何奇怪的事情。

    我曾经遇到过这样的情况,msi的一个GUI在不同版本之间没有更改


    还要检查版本号。我也遇到过这样的情况,只有修订号发生了更改(1.0.0.0->1.0.0.1是不够的,必须是1.0.1.x)。

    您确定目标用户在安装新版本之前卸载旧版本吗?我遇到了一些用户的问题,他们没有卸载旧版本,新版本也没有覆盖它。你可以试试下面的方法

    • 将安装程序中的默认目录设置为与旧版本不同的位置
    • 给捷径一个不同的名称(附加版本号)
    因为我认为缓存不会做这样的事情(如果文件是通过浏览器下载的,那么文件完成后会下载到特定位置,而不是保存在缓存中)


    编辑:更多的辣椒可能会带来一些东西。一些公司可能试图复制网络。可能是代理缓存。。。但我并不确信。

    你确定你使用的是3.5和2005吗

    如果您使用的是2008,请参阅


    尽管如此,这并不能解释不一致的行为——它应该一直是错误的。也许在某些情况下,人们正在进行显式卸载并获得成功?

    我同意-我以前见过这种下载缓存问题,特别是在公司代理中。即使我不使用浏览器下载它?我曾经通过ftp从Filezilla尝试过,但仍然遇到同样的问题。我也在考虑这个问题。但是,为什么它能在某些机器上工作而不能在其他机器上工作呢?有几个原因-旧版本从未安装,由不同的用户安装,MSI没有缓存或删除,等等。无论如何,值得一试。谢谢。我试试看。不过还需要一段时间,因为我们客户的维护人员要来对机器进行windows更新。