В следующем примере, программа конфигурации службы использует функцию OpenService, чтобы получить дескриптор с доступом к установленному объекту службы DELETE. Затем программа использует дескриптор объекта службы в функции DeleteService, чтобы удалить службу из базы данных Диспетчера управления службами (SCM).
BOOL DeleteSampleService() { schService = OpenService( schSCManager, // база данных SCManager TEXT("Sample_Srv"), // имя службы DELETE); // однако требует доступа DELETE if (schService == NULL) { printf("OpenService failed (%d)\n", GetLastError()); return FALSE; } if (!DeleteService(schService) ) { printf("DeleteService failed (%d)\n", GetLastError()); return FALSE; } else printf("DeleteService succeeded\n"); CloseServiceHandle(schService); return TRUE; } |