C# Windows服务未显示在已安装的服务中(因此无法启动)

C# Windows服务未显示在已安装的服务中(因此无法启动),c#,windows-services,C#,Windows Services,我只是构建了一个非常简单的Windows服务来测试一些东西,并构建它来获取.exe。根据MSDN中的说明,我还使用Visual Studio命令提示符2010(以管理员身份运行)installutil TestService.exe安装了该服务 使用installutil命令时,一切运行正常,我收到一条消息说服务已安装。此外,要在检查“服务”节点内部(在Visual Studio的服务器资源管理器中)时启动该服务,我看不到任何名为TestService.exe的服务 另外,开始菜单->我的电脑(

我只是构建了一个非常简单的Windows服务来测试一些东西,并构建它来获取.exe。根据MSDN中的说明,我还使用Visual Studio命令提示符2010(以管理员身份运行)
installutil TestService.exe
安装了该服务

使用
installutil
命令时,一切运行正常,我收到一条消息说服务已安装。此外,要在检查“服务”节点内部(在Visual Studio的服务器资源管理器中)时启动该服务,我看不到任何名为
TestService.exe
的服务

另外,开始菜单->我的电脑(右键单击)->管理->服务和应用程序->服务不会显示我可以通过它启动服务的
TestService.exe

有什么建议我如何启动服务

代码内部OnStart功能:

Process[] testProcess = Process.GetProcessesByName("notepad.exe");
if (testProcess.Length == 0)
    File.WriteAllText(@"C:\Users\User1\Desktop\service.txt", "nothing");

else
    File.WriteAllText(@"C:\Users\User1\Desktop\service.txt", "run");

我以前在使用
installutil
时遇到过问题,发现使用
sc
命令有效,而
installutil
则无效

尝试使用以下命令安装服务:

sc create servicename binPath= serviceexe.exe

我刚刚遇到了这个问题,并能够通过以下步骤解决它。如果跳过这些步骤,安装项目将生成文件并将其复制到正确的目录;但是,如果没有这些步骤,他们不会将您的二进制文件注册为服务

  • 在解决方案资源管理器中,右键单击安装项目,指向“查看”,然后选择“自定义操作”。此时将显示自定义操作编辑器

  • 在“自定义操作编辑器”中,在“自定义操作”节点上单击鼠标右键,然后选择“添加自定义操作”。此时会出现“选择项目中的项目”对话框

  • 双击列表框中的应用程序文件夹将其打开,选择MyNewService的主输出(活动),然后单击确定。主输出添加到自定义操作的所有四个节点:安装、提交、回滚和卸载

  • 构建安装项目


  • 在VS 2013中工作时,我通过右键单击项目并添加类型为
    installer Class
    的新项来添加安装程序时遇到了这个问题。关键区别在于,您需要右键单击
    Windows服务的
    设计视图
    ,然后单击
    添加安装程序


    有关.Net 4.5和4.6的完整详细信息,请参阅和

    是否刷新了服务列表?如果它仍然不在那里,安装可能失败。请参阅
    install.log
    文件以查看具体内容。@Oded:是的,我刷新并重新启动了Visual Studio,但该服务未显示。Install.log显示已成功安装的服务。它不会显示
    TestService.exe
    ,除非这是您在项目中的服务组件上设置的显示名称-默认为Service1。Service1在列表中吗?重新启动Visual Studio将没有帮助。需要刷新的是服务控制管理器。@Damien_不信者:不,服务1也不在列表中(服务项目中的文件名为Service1)
    sc create
    的问题是它不理解.NET安装程序类,所以它不会运行它们。这可能会导致一些问题,例如,没有创建事件源。@C:这种类型的服务已工作,并且服务显示在服务器资源管理器中的服务中。但是现在,我无法启动这个(因为这里没有启动选项)屏幕截图:@user1240679您可以在服务控制台中启动服务吗
    services.msc
    @user1240679或尝试
    net start servicename
    @BaliC:否,当我从services.msc尝试时出现一些错误。截图:这个对我有用。无法找出services.msc中缺少该服务的原因,并且忘记(doh!)将该服务添加到安装程序中。在vs2012中,没有“安装项目”选项如何解决该问题??