【问题标题】:Creating a C# installation package that backs up the previous version before updating.创建一个 C# 安装包,在更新之前备份以前的版本。
【发布时间】:2018-03-29 18:40:13
【问题描述】:

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

【问题讨论】:

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


    【解决方案1】:

    让我先解释几件事。

    备份以前的版本

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

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

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

    安装应用程序

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

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

    创建安装程序

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

    这不是理想的方法,但它可以让您了解如何通过基本知识完成它。希望它对您有所帮助

    【讨论】:

    • 如果有帮助,请务必将答案标记为答案...我总是很乐意提供帮助:)
    • @DanParadiso,你能把答案标记为答案吗:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-26
    • 2019-02-13
    • 2019-05-12
    • 2021-06-24
    • 2020-03-07
    • 1970-01-01
    相关资源
    最近更新 更多