服务配置程序使用CreateService功能在SCM数据库中安装服务。应用程序定义的schSCManager句柄必须具有SC_MANAGER_CREATE_SERVICE访问SCManager对象。以下示例显示如何安装服务。
VOID CreateSampleService()
{
LPCTSTR lpszBinaryPathName =
TEXT("%SystemRoot%\\system\\testserv.exe");
schService = CreateService(
schSCManager, // SCManager数据库
TEXT("Sample_Srv"), //服务名称
lpszDisplayName, //要显示的服务名称
SERVICE_ALL_ACCESS, //所需访问
SERVICE_WIN32_OWN_PROCESS, // 服务类型
SERVICE_DEMAND_START, //开始类型
SERVICE_ERROR_NORMAL, //错误控制类型
lpszBinaryPathName, //服务的二进制
NULL, //无负载排序组
NULL, //没有标签标识符
NULL, //不依赖
NULL, // LocalSystem帐户
NULL); //没有密码
if (schService == NULL)
MyErrorExit("CreateService");
其他
printf("CreateService SUCCESS\n");
CloseServiceHandle(schService);
}