Главная страницаОбратная связьКарта сайта

Установка или снятие Debug привелегии у текущего процесса


uses
  Windows, Messages, SysUtils, StdCtrls, SvcMgr;

var
  ssStatus: TServiceStatus;
  schSCManager, schService: SC_HANDLE ;

begin
  schSCManager := OpenSCManager( PChar("Comp1"), // имя компьютера, nil - local machine
  nil, // ServicesActive database
  SC_MANAGER_ALL_ACCESS); // full access rights

  if schSCManager = 0 then
    exit; //Ошибка?

  schService := OpenService(
  schSCManager, // SCM database
  PChar("SQLServerAgent"), // посмотри имя в Services. В данном случае - MS Server Agent
  SERVICE_ALL_ACCESS);

  if schService = 0 then
    exit; //Ошибка?

  if not QueryServiceStatus(
  schService, // handle to service
  ssStatus) then // address of status information structure
    exit; //Ошибка?

  case ssStatus.dwCurrentState of:
    SERVICE_RUNNING: ShowMessage("Работает!");
    SERVICE_STOPPED: ShowMessage("Выключен");
    // ну и т.д.
  end;
end;


Обсудить статью на форуме


Если Вас заинтересовала или понравилась информация по разработке на Delph - "Установка или снятие Debug привелегии у текущего процесса", Вы можете поставить закладку в социальной сети или в своём блоге на данную страницу:

Так же Вы можете задать вопрос по работе этого модуля или примера через форму обратной связи, в сообщение обязательно указывайте название или ссылку на статью!
   


Copyright © 2008 - 2024 Дискета.info