Открытие базы данных SCManager
|
Многие операции с сервисами требуют открытия базы данных, т.е. дескриптора объекта SCManager. Ниже представлен пример, который демонстрирует получение этого дескриптора.
Различные операции в базе данных SCM требуют различного уровня доступа и не рекомендуется постоянно запрашивать максимальный уровень доступа к базе. Если запросить SC_MANAGER_ALL_ACCESS и если у Вас не будет прав администратора, то функция OpenSCManager вернёт ошибку. Следующий пример показывает, как получить полный доступ к базе данных активных сервисов на локальной машине.// Открываем базу сервисов и получаем её дескриптор.
schSCManager = OpenSCManager( NULL, // локальная машина NULL, // имя базы (ServicesActive) SC_MANAGER_ALL_ACCESS); // полный доступ
if (schSCManager == NULL) MyErrorExit("OpenSCManager"); |