zoukankan      html  css  js  c++  java
  • windows服务命令 转载

    OnCustomCommand executes when the Service Control Manager (SCM) passes a custom command to the service. Specifies actions to take when a command with the specified parameter value occurs.

    The only values for a custom command that you can define in your application or use in OnCustomCommand are those between 128 and 256.
    Integers below 128 correspond to system-reserved values.

    Create One Windows Service & Implement Below Code in Service :

    namespace MyWindowsService
    {
        public partial class Service1 : ServiceBase
        {
            public enum SimpleServiceCustomCommands { Command1 = 128, Command2 =129, Command3 = 130};
     
            public Service1()
            {
                InitializeComponent();
            }

            protected override void OnStart(string[] args)
            {
            }

            protected override void OnStop()
            {
            }

            protected override void OnCustomCommand(int command)
            {
                base.OnCustomCommand(command);

                switch(command)
                {
                    case(int)SimpleServiceCustomCommands.Command1:
                    //Command1 Implementation
                    break;

                    case(int)SimpleServiceCustomCommands.Command2:
                    //Command2 Implementation
                     break;

                    case(int)SimpleServiceCustomCommands.Command3:
                    //Command3 Implementation
                        break;
                    default:
                        break;
     
               }       
            }
        } }

    Call Windows Service CustomCommands From User Application :

    • Create Service Controller Object 

      ServiceController Controller = new ServiceController("MyWindowsService");
       
    • Start the Windows Service

      Controller.Refresh(); //Gets the current status of service
          if (Controller.Status == ServiceControllerStatus.Stopped)
           {
       Controller.Start();
           }

       
    • Call CustomCommands Using Controller Object
       

      if (Controller.Status == ServiceControllerStatus.Running)
        {
            Controller.ExecuteCommand(128); 
           }
       

  • 相关阅读:
    HDU 1509 Windows Message Queue
    sql批量更换dedecms文章来源和作者
    dedecms织梦网站时间标签strftime和MyDate解析
    JS代码站原创DEDECMS教程插件系列
    DEDECMS织梦自定义表单中必填项、电话邮箱过滤以及验证码规则
    dedecms标签(tags)页面伪静态设置
    dedecms几个小技巧
    dedecms 5.7 网站搬家后产生的问题记录
    dedecms织梦做中英文(多语言)网站步骤详解
    DedeCMS系统设置说明:站点设置
  • 原文地址:https://www.cnblogs.com/baozhu/p/5171207.html
Copyright © 2011-2022 走看看