【问题标题】:How to use Custom Action of Setup Project (vdproj) with .NET Core如何在 .NET Core 中使用安装项目 (vdproj) 的自定义操作
【发布时间】:2021-03-08 13:33:28
【问题描述】:

我想为我用 .NET Core 3.1 编写的自托管服务创建一个安装程序。我正在使用Visual Studio 2019,所以我必须安装VisualStudioClient.MicrosoftVisualStudio2017InstallerProjects,这让我可以创建Setup Project

所以,现在一切正常,除了在安装过程中我无法运行任何代码!在标准 .NET Framework 中,有 Installer 类使我能够注入一些功能,例如“注册并启动服务”。但是 .NET Core 没有这样的东西!

那么我如何在安装完成后运行额外的 C# 代码呢?

【问题讨论】:

    标签: .net-core visual-studio-setup-proje


    【解决方案1】:

    事实证明,Installer class 不再受支持,并且可能不会在可预见的将来。

    解决方法是将服务 exe 本身作为自定义代码的宿主,运行参数。

    步骤:

    1. 在解决方案中,您的 .Net Core 服务所在的位置添加“安装项目”项目。 (它必须是相同的解决方案)
    2. 转到File System -> Application Folder 并添加PublishItemsOutputGroup
    3. 转到自定义操作视图并添加自定义操作PublishItemsOutputGroupInstall 并选择您的exe 名称。 (例如应该写成(name) PublishItemsOutputGroup from MyApiService (Active)
    4. arguments 设置为/my_Install
    5. 在服务中创建Main 并添加如下内容:
    if (args.Length == 1)
    {
           File.AppendAllText("test_install_ca.txt", args[0]);
           return;
    }
    
    1. 一旦你运行它,你会在System32目录中找到test_install_ca.txt,内容为/my_Install

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多