问题标签 [topshelf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Windows 服务使用 Topshelf 启动然后停止
我正在使用 Quartz.net,并且试图让 Quartz 服务器在 Windows 服务中启动。我创建了一个 Windows 服务项目并包含 Quartz.net 库。在我的服务课程中,我有:
我还创建了一个 Windows 服务安装程序,并使用以下命令在 Visual Studio 的命令提示符下成功安装了 Windows 服务:
installutil MyWindowsService.exe
当我在 Windows 服务列表中查看我的服务并尝试启动该服务时 - 我收到一个消息对话框:
这是我记录到事件查看器(log4net)的输出:
窗口事件
1
2
3
4
5
6
7
8
9
有谁知道如何在不引发此错误的情况下启动此服务?
提前致谢。
.net - 使用 TransactedInstaller - 我还需要使用回滚吗?
我已经使用 Topshelf 3 年了,但仅限于简单的用例。我开始了一项新工作并建议使用 Topshelf,但它们覆盖了 Installer 类的 Rollback 方法。例如他们用它来调用“http delete urlacl ...”。
Topshelf 不公开 BeforeRollback 或 AfterRollback。我不反对提交拉取请求,但我想事先知道我是否需要回滚功能?也可能已经有一种方法可以使用 Topshelf 来处理这个问题?
c# - Windows 服务 - 注入回调?
我创建了一个 TCP 侦听器(网络套接字)实例作为 TopShelf Windows 服务。由于这个项目是一个带有 Main() 的服务而不是一个类库,我不确定如何创建一个允许我注入回调的构造函数。
具体来说,这个想法是当 TCP 侦听器收到消息时,它应该调用注入的回调方法。通常使用类库我会创建一个构造函数,将 ICallback 作为参数并相应地实例化。
我可以使用我的 TopShelf 服务执行构造函数注入吗?如果是这样,怎么做?
c# - Topshelf 是否可以从一个控制台应用程序启动多个服务?
正如 TosShelf 所说:
"You can only have ONE service! As of 3.x Topshelf the base product no longer support hosting multiple services.
"
从 3.x 版本开始,我需要弄清楚如何集成新版本的 Topshelf。
问题: 是否可以使用 Topshelf 从一个控制台应用程序启动多个单独的服务?我怎样才能做到这一点?
c# - How TopShelf can capture arguments like 'install' or 'start' which is ignored by my Main method?
I was checking the TopShelf as a beginner.
I see that when you compile your console app you can install your service as:
and start:
What I do not understand is my console app does not do anything with those parameters.
Question:So how the TopShelf captures those 'install' or 'start' arguments?
c# - 如何使用 TopShelf 无法识别的命令行参数?
当我通过 TopShelf 安装并启动它作为 Windows 服务时,我想将一些自定义参数传递给控制台应用程序。
当我使用:
控制台应用程序失败:
[失败] 命令行 发现未知的命令行选项:DEFINE: fooBar = Test
问题:
我怎样才能让我的论点被 TopShelf 识别,以便我可以使用它们的值?
c# - 部署后启动服务命令失败
我遇到了 Windows 服务的问题 - 部署后service_Start
尝试失败(超时)。在第二次尝试时,它基本上成功了。我试过增加超时,但没有帮助。该服务没有依赖关系。
这是一个使用容器的c#
+应用程序。实现的主类注册到 LifestyleType 。其他依赖项注册为.Topshelf (latest)
Castle.Windsor (2.5.3)
IMyService
Singleton
transient
该服务从 Rabbit 总线读取消息并将它们存储在 Couchbase 中。
配置代码如下所示:
我认为也许某些东西没有正确发布并导致启动失败,但是在尝试了一些更改之后,我真的不知道还有什么可以尝试的。
我知道这可能不足以解决这个问题 - 请让我知道什么样的信息会有所帮助。我真的很想知道这里发生了什么,所以如果你能指出我在调试这个方面的正确方向,我也会很感激。
topshelf - Topshelf 安装命令不返回
我正在使用 Topshelf v3.1 将我的控制台应用程序安装为 Windows 服务。我通过命令行安装我的控制台,例如: myconsole install
除了命令似乎永远不会完成之外,一切似乎都很好,我的意思是通常一旦执行命令,命令行控制台将返回您可以再次键入另一个命令的状态。不知何故,topshelf 命令在最后一点停止,所以我必须 Control + C 来终止该命令。
我的代码如下:
不知何故,如果我取消注释掉上面注释掉的块并注释掉 Main 方法中的最后两行。然后我再次运行该命令,它神奇地起作用。
PS: DummyService.Run 方法只是包装了注释代码块。本质上,它们是相同的。
有任何想法吗?
干杯,Ld
.net - 如何在 TopShelf 中为服务指定命令行选项
我正在使用命令行参数将一些配置传递给 Windows 服务(它将是几个具有不同命令行的实例)。
我的代码如下所示:
当我安装服务时,我使用:
不幸的是,sqlserver
命令行选项仅在安装阶段可用,并且不转到服务的参数。所以当我运行服务时,我没有得到我需要的参数值。
有没有办法修改TopShelf启动的服务的命令行?
.net - HostFactory.Run 和 HostFactory.New 有什么区别
我需要在我所在的项目中使用 topshelf 并且我希望有一个简单的问题。当我使用时一切正常HostFactory.Run
,但我认为HostFactory.New
通过阅读函数上的名称来使用它似乎更合理,这里使用的是:http: //docs.topshelf-project.com/en/latest/配置/config_api.html。
然而,在更简单的示例http://docs.topshelf-project.com/en/latest/configuration/quickstart.html中,HostFactory.Run
使用了 insted 的HostFactory.New
. 那么区别是什么呢?