【问题标题】:Install a service created with VS2010安装使用 VS2010 创建的服务
【发布时间】:2012-09-17 07:02:21
【问题描述】:

我必须在 Visual Studio 中为一位客户创建服务。

客户 IT 服务告诉我他们不需要任何安装程序,只需要一个可以使用 instsrv.exe 安装的 exe。

所以我在 VS2010 上创建了一个 Service 项目,并对其进行了编译(64 位,它是一个必须以 64 位运行的应用程序)。

第一个问题:我没有找到任何 instsrv.exe,所以我使用了 64 位版本的 InstallUtil.exe:

C:\Windows\Microsoft.Net\Framework64\v4.0.xxxx\InstallUtil.exe "PathToMyGeneratedExe"

它告诉我“The commit phase completed successfully.”和“The transacted install has completed.”。

所以我假设安装成功完成。

但是如果我进入服务控制台,我找不到创建的服务。

那么我错过了什么?

【问题讨论】:

  • 它是否给出任何错误?还是只是成功消息?如果是这样,您是否在服务控制台中寻找正确的名称?你在项目中给它起了什么名字?
  • 您可以使用日志文件选项运行 InstallUtil 以获取更多信息
  • @GeraldVersluis 没有错误消息。

标签: c# .net visual-studio-2010 service windows-services


【解决方案1】:

InstallUtil 旨在与服务安装程序一起使用(这真的很容易制作,但有点隐蔽)我想您的客户不是在使用 gui 安装程序后,但我认为在安装基本服务安装程序时可能值得您。

通常 InstallUtil 也会提示用户运行该服务。如果你还没有得到这个,你可能还没有安装

阅读http://arcanecode.com/2007/05/23/windows-services-in-c-adding-the-installer-part-3/ 了解如何执行此操作的详细信息

(TLDR 右键单击​​您的服务设计界面并添加安装程序)

【讨论】:

  • 和 instsrv 还需要一个 serviceInstaller 项目吗?因为我发现了一些没有指定任何服务安装程序项目的链接:msdn.microsoft.com/fr-CH/library/9k985bc9(v=vs.80).aspx
  • @j4n 不能说我曾经使用过 instsrv,它可能不需要安装程序。但是,如果您想使用 installutil 对其进行测试,则需要安装程序
猜你喜欢
  • 1970-01-01
  • 2015-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多