CreateService() 调用成功,即使依赖项不存在

CreateService() call is successful, even though dependency doesn't exist

本文关键字:依赖 不存在 调用 成功 CreateService      更新时间:2023-10-16

我有以下代码:

TCHAR buff[200];
_tcscpy_s(buff, argv[3]);  //CONSIDER argv[3] as XYZSvc
_tcscat(buff, L"");
schService = CreateService(
    schSCManager,
    lpszServiceName, 
    lpszDisplayName, 
    SERVICE_ALL_ACCESS,
    SERVICE_WIN32_OWN_PROCESS,
    SERVICE_DEMAND_START,
    SERVICE_ERROR_NORMAL,
    lpszBinaryPathName,
    NULL,
    NULL,
    buff, // INITIALIZED ABOVE
    NULL,
    NULL); 

这个调用执行成功,即使XYZSvc不存在。有人能告诉我这个代码有什么问题吗?

您可以很好地创建服务,即使您指定的依赖项无效。当SCM试图启动服务并解析依赖项时,将发生任何故障。