【问题标题】:Creating a .net core windows service with Windows Compatibility Pack使用 Windows 兼容包创建 .net 核心 Windows 服务
【发布时间】:2018-04-25 22:18:33
【问题描述】:

我需要在 Windows 机器上创建一个 Windows 服务,但系统将只有 .NET Core 2.0。 Windows 兼容包现在支持 System.ServiceProcess.ServiceBase,所以这应该是可能的。我已经为 WCP 安装了 NuGet 包,但不知道如何开始开发服务。

在 .NET Framework 中,有一个用于创建初始服务框架的向导,我使用过该向导。但是,我不确定如何(1)使用 WCP 从头开始​​创建新的 .net 核心服务,或者(2)采用 .net Framework 服务并将其转换为使用 .net Core - 没有办法在项目属性中重新定位。

我尝试通过编辑 appconfig 以引用 netcoreapp2.0 来强制重定向,但该项目仍然引用 .net 框架程序集。

包是 Microsoft.Windows.Compatibility -Version 2.0.0-preview2-26406-04

我对此有点陌生,如果有任何建议,我将不胜感激。

【问题讨论】:

标签: c# .net-core windows-services


【解决方案1】:

幸运的是,我最近在just this subject 上写了一篇博文。

基本上:

  1. 将应用程序创建为 .Net Core 控制台应用程序。

  2. 安装 Windows 兼容包 (Install-Package Microsoft.Windows.Compatibility)。

  3. 通过从 ServiceBase (class TestSevice : ServiceBase) 继承来创建您的服务。

  4. 在控制台应用的 Main 方法中,只需实例化服务并调用 run (ServiceBase.Run(service);)。

  5. 要安装它,请使用 sc.exe。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-05
    • 2022-06-21
    • 1970-01-01
    • 2013-04-07
    • 2010-12-06
    • 1970-01-01
    • 2023-02-03
    相关资源
    最近更新 更多