2013-08-21 63 views
1

我在安装使用C#中的窗口服务有问题。当我建立了我的窗口服务的第一个项目,我得到了以下问题: “不能在命令行或调试启动服务必须首先安装(使用installutil.exe)Windows服务,然后开始与ServerExplorer,Windows服务Afministrative。工具或NET START命令“。窗口服务安装问题

然后我编辑我的Program.cs为:

static void Main() 
{ 
    if (System.Diagnostics.Debugger.IsAttached) 
    { 
     Service1 service = new Service1(); 
     string[] args = new string[] { "arg1", "arg2" }; 
     service.StartFromDebugger(args); 
    } 
    else 
    { 
     ServiceBase[] ServicesToRun; 
     ServicesToRun = new ServiceBase[] 
     { 
      new Service1() 
     }; 
     ServiceBase.Run(ServicesToRun); 
    } 
} 

// Also added the following code 
public partial class Service1 : ServiceBase 
{ 
    public void StartFromDebugger(string[] args) 
    { 
     OnStart(args); 
    } 

} 

那么这个问题就解决了。之后,当我通过增加新的安装项目创建一个项目的.exe文件和我的系统上安装它,然后再次给了我上面的错误。 plz帮助我.... thanx提前

+0

这不是直接回答,而是尝试[顶层架构](http://topshelf-project.com)。它使您可以更轻松地构建和调试Windows服务。 –

回答

1

你需要通过点击服务设计器窗格中添加安装程序来添加一个服务安装。有关于创建和使用C#在youtube安装Windows服务一个伟大的视频。

3

安装服务最简单的方法是如下:

进入cmd并运行它作为一个管理员

记下这个命令::

sc create YourServiceName displayname= "Service Name to be displayed" binpath= c:\YourService.exe start= demand 

你的exe路径文件和config.exe应该是相同的,以避免数据库连接问题。 只要你运行此,它会给你一个成功的消息...

0

来安装Windows服务的最简单方法。建立在释放模式您的Windows服务,然后复制所有文件的bin释放里面,然后放入一个文件夹

打开命令提示符以管理员身份运行该文件夹里面去,然后使用这个命令

installutil yourservicename.exe(所述relese里面有一个文件)

卸载///

installutil/U yourservicename.exe(所述relese内部有一个文件) 或 installutil -u yourservicename。exe文件(该relese里边有一个文件)

欢呼

-1

Windows服务: 第1步:

 First step is to add installer 

第2步:

点击您的服务给显示名称

步骤3:

 Select Local system 

第4步:

 Open Developer command prompt 

第5步:

InstallUtil your_service_path/Your_service_display_name.exe 

步骤6:

 net start Your_service_display_name 

这里是链接

  https://youtu.be/rG3Ts5CrTUA