zoukankan      html  css  js  c++  java
  • windows服务

    windows服务被设计用于在后台运行的应用程序以及实现没有用户交互的任务
    一个程序可能包含若干个服务,每个服务都必须列于专门的分派表中,这个表中的每一项都是SERVICE_TABLE_ENTRY结构
    typedef struct _SERVICE_TABLE_ENTRYW
    {
    LPWSTR lpServiceName;
    LPSERVICE_MAIN_FUNCTIONW lpServiceProc;
    }SERVICE_TABLE_ENTRYW, *LPSERVICE_TABLE_ENTRYW;
    分派表的最后一项必须是服务名和服务主函数域的NULL指针

    服务控制管理器(SCM:Services Control Manager)是一个管理系统所有服务的进程
    ServiceMain要尽可能早的为服务注册控制处理器,通过调用RegisterServiceCtrlHadler函数
    注册完控制处理器后,获得状态句柄hStatus,通过调用SetServiceStatus函数,用hStatus想SCM报告服务状态

    typedef struct _SERVICE_STATUS
    {
    DWORD dwServiceType;//指示服务类型,创建win32服务,赋值SERVICE_WIN32
    DWORD dwCurrentState;//指定服务的当前状态
    DWORD dwControlsAccepted;//通知SCM服务接收哪个域
    DWORD dwWin32ExitCode;//在终止服务并报告退出细节时有用
    DWORD dwServiceSpecificExitCode;//同上
    DWORD dwCheckPoint;//表示初始化某个服务进行需要30s以上
    DWORD dwWaitHint;
    } SERVICE_STATUS, *LPSERVICE_STATUS;

  • 相关阅读:
    js 鼠标事件大全
    ASP.NET 解决重复提交问题
    C# 统计函数运行时间
    DataGrid 、Repeater、DataList、GridView自动编号列
    两种时间格式正则表达式HH:mm 和HH:mm:ss
    SQL Server2008 新语法
    XYTipsWindow 2.8
    MSSQL 清空日志
    SQL 日期格式化大全
    HDOJ 2132
  • 原文地址:https://www.cnblogs.com/xiaoxiaocaicai/p/3595250.html
Copyright © 2011-2022 走看看