创建一个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它可以帮助您
我正在尝试创建一个安装程序,用于在更新之前备份 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它可以帮助您