Форум: "WinAPI";
Текущий архив: 2007.11.11;
Скачать: [xml.tar.bz2];
ВнизПроблема с TService Найти похожие ветки
← →
Nemec © (2007-05-04 22:11) [0]Здравствуйте мастера. Такая проблема. Сервис по событию выключает компьютер. До сиз пор проблем не было. Теперь в силу обстоятельств, сервис запускается из под учетной записи (на компе она является адмиром). Комп перестал выключатся пока не войдешь в систему. Может кто подскажет как с этим справиться. Заранее спасибо.
← →
Nemec © (2007-05-04 22:13) [1]Использую ExitWindowsEx, привилегии даются.
← →
Nemec © (2007-05-05 11:34) [2]Использую следующий код:
function TService1.WinExit(iFlags: integer): boolean;
// возможные флаги:
// EWX_POWEROFF + EWX_FORCE
// EWX_LOGOFF
// EWX_REBOOT
// EWX_SHUTDOWN
begin
Result := True;
If SetPrivilege("SeShutdownPrivilege", true)
Then
begin
WriteLn (F, "Привилегии получены");
Try
If not ExitWindowsEx(iFlags, 0)
Then
begin
WriteLn(F, IntToStr(GetLastError()));
Result := False;
end;
except
WriteLn(F, IntToStr(GetLastError()));
end;
SetPrivilege("SeShutdownPrivilege", False)
end
else
begin
Result := False;
end;
end;
Может кто подскажет в чем дело, комп не выключается пока не войдешь в систему.
Если сервис запускается с системной учетной записью все Ок.
← →
Leonid Troyanovsky © (2007-05-05 12:15) [3]
> Nemec © (05.05.07 11:34) [2]
http://groups.google.com/group/fido7.ru.delphi/msg/4f6cb6c1e2e77ec7
--
Regards, LVT.
← →
Nemec © (2007-05-05 14:12) [4]Спасибо Леонид за ссылку. Но дело в том, что привилегии получаются, функция ExitWindowsEx похоже выполняется (в логе пусто) и вся эта фишка отлично работала и работает под системной учетной записью. Проблема как раз в том, что если я запускаю сервис от имени пользователя (пусть даже этот пользователь админ), все это почему-то не хочет работать, пока не войдешь в систему.
А может я дурак, чего не понимаю!!!
← →
Leonid Troyanovsky © (2007-05-05 14:37) [5]
> Nemec © (05.05.07 14:12) [4]
> А может я дурак, чего не понимаю!!!
Видимо, ExitWindowsEx должно быть из интерактивной станции.
Попробуй вместо него InitiateSystemShutdown
(после установки прав).
--
Regards, LVT.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2007.11.11;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.09 c