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

Creating a C# installation package that backs up the previous version before updating.

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

让我先解释一下。

Backing up the previous version

首先,您需要确定您当前应用程序的安装 folder.You 可以创建一个注册表项来保存应用程序的安装位置(您需要在应用程序的 first-time 安装程序中执行此操作) .为此,您可以使用 Registry.LocalMachine.CreateSubKey(@"SOFTWARE\ProductName\appPathHere")。然后,在您的新安装程序中,您可以读取注册表项以获取 application.Then 的路径,您可以做的是创建 [=29] 的 ZIP =]。为此你可以使用:

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

这将备份当前 application.You 甚至可以修改文件 type/extension 以自定义 type/extension。

Installing the application

使用 System.IO.Directory.Delete(path, true) 读取注册表项以获取已安装 file.Delete 的路径。您可以压缩所有文件,然后让安装程序将其解压缩到特定的 location.You可以简单地使用 :

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

Creating the installer

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

这不是理想的方法,但它会让您了解如何使用基本的方法完成它knowledge.Hope它可以帮助您