创建一个C#安装包,在更新之前备份以前的版本。

时间:2018-03-29 18:40:14

标签: c# visual-studio-2015 backup upgrade installation-package

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

1 个答案:

答案 0 :(得分:0)

首先让我解释一下。

  

备份以前的版本

首先,您需要确定当前应用程序的安装文件夹。您可以创建一个注册表项来保存应用程序的安装位置(您需要在应用程序的首次安装程序中执行此操作)。为此您可以使用Registry.LocalMachine.CreateSubKey(@"SOFTWARE\ProductName\appPathHere")。然后,在新的安装程序中,您可以阅读注册表项以获取应用程序的路径。然后,您可以做的是创建该路径/文件夹的ZIP。为此,您可以使用:< / p>

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

这将备份当前的应用程序。您甚至可以修改文件类型/扩展名,为其提供自定义类型/扩展名。

  

安装应用程序

阅读注册表项以获取已安装文件的路径。使用System.IO.Directory.Delete(path, true)删除它。您可以压缩所有文件,然后让安装程序将其解压缩到特定位置。您只需使用:

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

创建安装程序

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

这不是理想的方式,但它会让你了解如何使用基本知识完成它。希望它可以帮助你