windows下共享式服务开发
参考:
https://blog.csdn.net/dongyewolong/article/details/8164873
https://blog.csdn.net/qwertyupoiuytr/article/details/53999629
1 相关注册表项
<0> x86跟x64的配置项在同一个位置, 不同的是ImagePath中svchost.exe不同:
x64对应的是%SystemRoot%\system32\svchost.exe, 即C:\Windows\system32\svchost.exe
x86对应的是C:\WINDOWS\SysWOW64\svchost.exe
<1> HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost
这里存放服务组跟该组中服务名, 以DevicesFlow服务组为例, 服务组的名字是DevicesFlow, 该组中共包含两个服务, 分别是"DevicePickerUserSvc" 和 "DeviceFlowUserSvc"


<2> HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
该位置存放每个服务的具体配置,
服务的名字作为Services的子健, 该子健的项值对保存了该服务的相关配置. 其中比较重要的有DisplayName, 跟ImagePath(其中-k 参数后面跟的就是服务组的名字),
该子健还必须有一个子健Parameters, 它的项值对指定该服务对应的dll的位置, 以及卸载时刻

DevicePickerUserSvc相关项

Parameters相关项

DeviceFlowUserSvc



2 编写共享式服务代码
相对于独立式服务, 共享式服务只要实现ServiceMain跟服务控制函数就可以了, 不过ServiceMain必须导出供svchost.exe调用
3 服务的启动,停止和关闭
windows下共享式服务开发的更多相关文章
- Windows下搭建objective C开发环境
摘自:http://blog.csdn.net/zhanghefu/article/details/18320827 最近打算针对iPhone.iPod touch和iPad开发一些应用,所以,需要开 ...
- Windows下当地RabbitMQ服务的安装
Windows下本地RabbitMQ服务的安装 本文参考:刘若泽相关技术文档 当然这些内容页可以通过RabbitMQ官方网站获得. RabbitMQ配置说明手册 一.RaibbitMQ服务器配置 1. ...
- redis在Windows下以后台服务一键搭建集群(多机器)
redis在Windows下以后台服务一键搭建集群(多机器) 一.概述 此教程介绍如何在windows系统中多台机器之间布置redis集群,同时要以后台服务的模式运行.布置以脚本的形式,一键完成.多台 ...
- redis在Windows下以后台服务一键搭建集群(单机--伪集群)
redis在Windows下以后台服务一键搭建集群(单机--伪集群) 一.概述 此教程介绍如何在windows系统中同一台机器上布置redis伪集群,同时要以后台服务的模式运行.布置以脚本的形式,一键 ...
- Windows下搭建Spark+Hadoop开发环境
Windows下搭建Spark+Hadoop开发环境需要一些工具支持. 只需要确保您的电脑已装好Java环境,那么就可以开始了. 一. 准备工作 1. 下载Hadoop2.7.1版本(写Spark和H ...
- 【转】linux和windows下安装python集成开发环境及其python包
本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...
- Windows下的Objective-C集成开发环境(IDE)
Windows下的Objective-C集成开发环境(IDE) 分类: Objective-C2012-04-20 21:54 26631人阅读 评论(42) 收藏 举报 windowside编译器c ...
- windows 下共享内存使用方法示例
windows下共享内存使用方法较 linux 而言微微复杂 示例实现的功能 有一个视频文件,一块内存区域 : 程序 A,将该视频写入该内存区域 : 程序 B,从该内存区域读取该视频 : 代码模块实现 ...
- windows下启动mysql服务
当你无法连接你的mysql数据库时,或者因为某些原因导致与mysql数据库的连接丢失时,可通过以下方式启动mysql服务 1.命令行下启动mysql服务 以管理员身份运行cmd,进入mysql安装目录 ...
随机推荐
- 封装qq分享静态库到cocopod
封装qq分享静态库到cocopod 1,创建framework库,到腾讯开放平台(open.qq.com)申请项目appid 2,将iOS SDK中的TencentOpenAPI.framework ...
- Linux 环境下安装Redis的步骤
#进入usr/local目录cd /usr/local#下载1.wget http://download.redis.io/releases/redis-4.0.10.tar.gz#解压2.tar x ...
- iOS TabelViewCell 删除 编辑 插入
/** TableView 进入或退出编辑状态(TableView 方法). */ - (void)setEditing:(BOOL)editing animated:(BOOL)animate{ / ...
- 大数据学习-2 认识Hadoop
一.什么是Hadoop? Hadoop可以简单的理解为一个数据存储和数据分析分布式系统.随着互联网的普及产生的数据是非常的庞大的,那么我们怎么去处理这么大量的数据呢?传统的单一计算机肯定是完成不了的, ...
- KeyguardSimPinView
/* * Copyright (C) 2012 The Android Open Source Project * * Licensed under the Apache License, Versi ...
- 使用command line测试网速
wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py --no ...
- ios 当margin-left margin-right 超过设备宽度
ios 当margin-left margin-right过长,相加超过 超过设备宽度时,导致页面不能上下滚动,目前尚未找到解决办法,记录一下
- VMware 虚拟机安装-->wrf、cmaq安装
微信关注公众号 “软件安装管家” 下载并安装VMware 下面简要记载我的安装和设置步骤: 下载解压,右键以管理员方式运行 安装好了之后 双击桌面 的VMware 输入许可证密钥:AA510-2DF1 ...
- linux自动备份lampp的日志
要求是:每天23:59自动备份lampp的日志/opt/lampp/logs/access_log 放到这个目录下/tmp/bak 命名格式:access_log.日期 1.新建shell脚本#vi ...
- eclipse运行无错的ssm项目,迁移到idea出错
我的报错信息为mapper绑定相关错误,是因为idea在构建项目时,target/classes目录下不存在mapper.xml文件 解决方法: <!-- 在maven中添加以下配置,它的父标签 ...