创建一个C#安装程序包,该软件包在更新之前备份上一个版本



我正在尝试创建一个安装程序,该程序将在更新之前备份C#程序的先前版本。我正在使用VS 2015,并且已经查看了安装程序,高级安装程序和安装速度LE。我真的不知道我在看什么,如何使用自定义动作,几乎任何东西。任何建议或帮助将不胜感激。

让我首先解释一些事情。

备份以前的版本

首先,您需要识别当前应用程序的安装文件夹。您可以创建一个注册表密钥以保存安装应用程序的位置(您需要在应用程序的首次安装程序中执行此操作(。Registry.LocalMachine.CreateSubKey(@"SOFTWAREProductNameappPathHere")。然后,在您的新安装程序中,您可以读取注册表密钥以获取应用程序的路径。然后,您可以做的是创建该路径/文件夹的邮政编码。您可以使用:

  System.IO.Compression.ZipFile.CreateFromDirectory(pathofApp, zipFilePath);

这将备份当前应用程序。

安装应用程序

阅读注册表密钥以获取已安装文件的路径。使用System.IO.Directory.Delete(path, true)删除它。您可以将所有文件汇总,然后使安装程序将其提取到特定位置。您可以简单地使用:

 System.IO.Compression.ZipFile.ExtractToDirectory(zipPath, extractPath);

创建安装程序

我建议您创建Winform或WPF应用程序,设计UI并实现上述方法。

这不是理想的方式,但它将为您提供有关如何用基本知识完成的想法。希望它可以帮助您

最新更新