用C#创建Windows 服务

来源:互联网 发布:js怎么隐藏按钮 编辑:程序博客网 时间:2024/04/30 18:41

 Windows 服务创建安装项目

本节描述如何创建 Windows 服务项目,以及如何使用已编译的安装项目来安装 Windows 服务。

创建 Windows 服务项目

  1. 启动 Microsoft Visual Studio。
  2. 文件 菜单上指向 新建,然后单击 项目
  3. 项目类型 框中,单击 Visual C# 项目,然后单击windows下的Windows 服务

    注意Visual Studio 2005 或 Visual Studio 2008 中展开 Visual C#项目类型下,单击Windows,然后单击模板下的 Windows 服务
  4. 类型在 名称 文本框和然后键入在位置 文本框中的C:/LogWriterService。单击确定
  5. 在解决方案资源管理器中,用鼠标右键单击 Service1.cs,然后单击查看代码
  6. OnStart事件处理程序中,请使用下面的代码替换注释:
  7. SMS sms = new SMS();
    private System.Timers.Timer times;
  8. protected override void OnStart(string[] args)
            {
                // TODO: 在此处添加代码以启动服务。
                times = new System.Timers.Timer(5000);//5秒钟检查一次
                times.Enabled = true;
                times.Elapsed += new System.Timers.ElapsedEventHandler(time_Elapsed);
                times.AutoReset = true;
                times.Enabled = true;
                times.Start();
            }
            void time_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
            {
                //调用你自己写的方法就OK
                sms.addSMS();
            }
            protected override void OnStop()
            {
                // TODO: 在此处添加代码以执行停止服务所需的关闭操作。
                times.Stop();
            }
  9. 在解决方案资源管理器中,双击 $ Service1.cs

  10. 在代码编辑器窗口中用鼠标右键单击 设计视图,然后单击属性

  11. 在属性窗格中单击 添加安装程序链接。

  12. 在为 ServiceInstaller1属性窗格更改ServiceName服务 1的属性。

  13. 在设计视图中的代码编辑器窗口中单击 $ ServiceProcessInstaller1

  14. 在属性窗格中将 帐户属性改为本地系统 LocalService 网络服务值是仅在 Microsoft Windows XP 中可用)。

安装 Windows 服务使用经过编译的安装项目

  1. 您完成在上一节可以配置 Windows 服务项目的步骤之后,请按照下列步骤,以便可以安装服务应用程序打包服务应用程序的部署项目中添加操作:

    将新项目添加到 LogWriterService 项目。若要这样做,请按照下列步骤操作:

    在解决方案资源管理器中,右击 解决方案 LogWriterService (1 项目),指向添加,然后单击新建项目

    单击 安装和部署项目 项目类型,然后单击 模板下的 安装项目

    名称 文本框中键入 ServiceSetup

    类型 C:/位置文本中框,然后再单击确定

    告诉部署项目包。若要这样做,请按照下列步骤操作:

    在解决方案资源管理器中,用鼠标右键单击 ServiceSetup,指向添加,然后再单击项目输出

    添加项目输出组对话框中将项目 框中单击 LogWriterService

    单击 主输出,然后单击确定

    对于正确的安装中添加仅主输出。若要向自定义操作,请按照下列步骤操作:

    在解决方案资源管理器中,用鼠标右键单击 ServiceSetup、 再指向视图,然后单击自定义操作

    用鼠标右键单击 自定义操作,然后单击添加自定义操作

    单击 应用程序文件夹,然后单击确定

    单击 主输出来自 LogWriterService (活动),然后单击确定

    请注意在 安装 提交回滚 卸载下显示的 主输出

    默认状态下,安装项目不会包括在生成配置中。若要生成解决方案,使用下列方法之一:

    • 方法 1
      1. 用鼠标右键单击 LogWriterService,然后单击生成器
      2. 用鼠标右键单击 ServiceSetup,然后单击生成
    • 方法 2
      1. 生成 菜单上单击生成整个解决方案的配置管理器
      2. 单击以选中 ServiceSetup 生成复选框。
      3. 按 f7 键生成整个解决方案。在构建该解决方案,则必须可用服务的一个完整的安装程序包。

    若要安装新生成的服务,ServiceSetup,用鼠标右键单击,然后单击安装

    ServiceSetup 对话框中单击下一步三次。请注意该服务安装时就会出现一个进度栏。

             已经安装了服务,单击 关闭

 

另一种添加方法,把做好的工程重新生成,然后用:

假设为vs2008
开始-》所有程序-》Miscrosoft Visual Studio 2008-》Visual studio tools-》visual studio2008命令行工具。
然后在弹出的dos窗口中输入:
InstallUtil.exe 服务名
例如:
InstallUtil.exe G:\project\vs2008\WindowsService2\WindowsService2\bin\Debug\yourwindowsservice.exe

如果要卸载服务
InstallUtil.exe \u 服务名

如果卸载不了,就点击开始、cmd命令、sc delete myservice名称

 

 

原创粉丝点击