【问题标题】:Installing a Windows Service - No error but it isn't in Service Control Manager安装 Windows 服务 - 没有错误,但它不在服务控制管理器中
【发布时间】:2009-02-24 11:04:05
【问题描述】:

我在 c# 中创建了一个 Windows 服务,我正在尝试使用此处推荐的 installutil 安装它以进行调试:http://msdn.microsoft.com/en-us/library/sd8zc8ha.aspx

installutil 显示安装已完成。但是,服务控制管理器中没有任何显示。

我已经在 Server 2008 和 XP 上进行了尝试,结果相同。

有什么想法吗?

【问题讨论】:

  • 您是否在项目中为该服务添加了安装程序组件?
  • 不,但文章中没有明确说明 - 我会试一试。
  • 是的,就是这样,如果您将其发布为答案,我会给您一个赞成票。

标签: c# visual-studio service windows-services installation


【解决方案1】:

我的一位同事遇到了或多或少相同的问题。

您是否在项目中添加了安装程序?要安装该服务,您需要将安装程序添加到您的 Visual Studio 项目中。 在 Visual Studio 中添加安装程序的最简单方法是在设计模式下打开您的服务,然后右键单击设计区域并选择添加安装程序。这将添加一个文件 ProjectInstaller.cs,它本身包含一个 ServiceInstaller 对象和一个 ServiceProcessInstaller 对象。 添加安装程序后,您可以设置安装服务时将使用的服务名称、描述和其他选项。如果您现在尝试使用 InstallUtil,您的服务应该已安装并应显示在“服务”列表中。

【讨论】:

  • 我刚刚注意到你解决了你的问题。如果其他人有同样的问题,我会留下我的答案。
  • 好吧,直到 Dmitriy Matveev 发表他的答案(他在 cmets 中说的和你说的一样)你有分数。
【解决方案2】:

我遇到了类似的问题(构建安装程序,没有错误,services.msc 中没有出现服务),但解决方案不同,因为我已经配置了安装程序。

在我的例子中,Service-project 的Application Properties (Alt-Enter, Application-tab) Startup object(not set),如下所示:

选择默认的.Program并重建服务和安装程序工作(服务出现在services.msc)。

设置此属性是the MSDN service installer walkthrough 中引用的步骤之一this SO answer. 请确保遵循所有步骤!

【讨论】:

    【解决方案3】:

    我无法具体说明 C# 或 .NET 的任何问题,但我有一篇关于安装服务必须发生的事情的文章,并以广泛记录的框架(来源包括代码)用于编写services in Lua。我在这里提供它作为另一种方法的示例,因为有时仅从另一个角度看待事物可能会有所帮助。

    免责声明:它非常处于 alpha 质量级别,是的,我是它的作者。

    该框架具有与 Windows SCM 交互以安装和删除服务所需的所有代码。

    【讨论】:

    • 没关系。我把它放在那里主要是因为到目前为止还没有人做出回应,而且它至少是一个完整的示例部分,其目标是记录服务和 SCM 之间的关系。
    猜你喜欢
    • 2012-12-21
    • 2012-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多