如果生成windows的一个自启动服务,但是让他先不用自动启动?
用CreateService创建一个windows services,dwStartType设置为自动启动SERVICE_AUTO_START,可是好像创建完服务以后都会自动启动这个服务,能不能创建时设置这个服务为自动启动,但是创建完服务以后不要立即启动?第一次要靠手动启动或者重启机器启动服务?是不是CreateService做不到这一点,有其他API可以实现这一要求吗?
[解决办法]
想简单点就
system("net start \"Server Name\"");
[解决办法]
CreateService(); 这个函数的dwStartType参数指定为
SERVICE_DEMAND_START 或者 SERVICE_DISABLED
SERVICE_DEMAND_START //手动启动
SERVICE_DISABL //禁用
[解决办法]
额,我用CreateService 仅仅是创建了服务,服务不会自己启动,需添加启动代码.
SC_HANDLE hService = ::CreateService(hSCM,
m_szServiceName,
m_szServiceName,
SERVICE_ALL_ACCESS,
SERVICE_WIN32_OWN_PROCESS,
SERVICE_AUTO_START, // start condition
SERVICE_ERROR_NORMAL,
szFilePath, //file path
NULL,
NULL,
NULL,
NULL,
NULL);