gpt4 book ai didi

c# - Topshelf 服务/应用卡在 "Creating"

转载 作者:太空宇宙 更新时间:2023-11-03 13:57:46 24 4
gpt4 key购买 nike

我正在尝试启动 Topshelf 的一个实例。我已经下载了 v. 2.3 的二进制文件并提取了所有内容。

然后我创建了一个空的控制台应用程序。我已将框架更改为 .NET 4.0 框架,并将以下代码添加到我的 static void Main() 方法中:

Host h = HostFactory.New(x =>
{
x.Service< MyApp>(s =>
{
s.SetServiceName("Something");
s.ConstructUsing(name => new MyApp());
s.WhenStarted(tc => tc.Start());
s.WhenStopped(tc => tc.Stop());
});

x.RunAsLocalSystem();

x.SetDescription("Something");
x.SetDisplayName("Something");
x.SetServiceName("Something");
});

h.Run();

当我按下 F5 时,控制台应用程序按预期运行。

然后我将 bin/release 输出复制到 topshelf/services/test 目录并运行 Topshelf.Host.exe。这是结果: Topshelf console output

如果我将浏览器指向仪表板,这就是我看到的: Topshelf dashboard

“测试”服务一直显示“正在创建”(等待超过 15 分钟)。

我做错了什么?我尝试过多种控制台应用程序。如果我在我的控制台应用程序上调用 install,该应用程序将成功注册。

提前致谢!

最佳答案

当您将 Topshelf DLL 链接到您的控制台应用程序时,您应该从命令行运行您的控制台应用程序。据我所知,您正在尝试改用 Topshelf 主机。尝试运行您的控制台应用程序,您应该会看到它正确地启动了您的服务。

关于c# - Topshelf 服务/应用卡在 "Creating",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11617887/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com