Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Перезагрузка и выключение


Pasha83 ©   (2005-08-11 13:52:00) 

Привет!
Помогите плиз
надо написать прожку которая бы висела в задачах и перезагружала и выключала комп в определенное время
Как этого достигнуть (можно исходный код)
???????/


vitovt   (2005-08-19 00:05:00) [1]

Могу посоветовать программу GoodNight


Anatoly Podgoretsky   (2005-08-18 00:50:00) [2]

atruhin ©   (18.08.05 00:38) [9]
Зачем, есть стандартный Shutdown


atruhin   (2005-08-18 00:38:00) [3]

>>то в Windows XP планировщик вообще не работает!!!
ЭТо круто!
>>И к тому же виндовый планировщик не умеет вырубать комп
Читай хелп run32.dll


NightLord   (2005-08-17 18:42:00) [4]

To Anatoly Podgoretsky ©   (16.08.05 20:21) [7]
А если пользователю надо, к примеру, выключить комп при появлении окна или по его уничтожении, то твой планировщик тут не поможет. И к тому же виндовый планировщик не умеет вырубать комп, и насколько я знаю (у меня так) то в Windows XP планировщик вообще не работает!!!


Anatoly Podgoretsky   (2005-08-16 20:21:00) [5]

В определенное время - значит планировщик, прорамму писать это лишнее, все и так уже есть.


NightLord   (2005-08-16 19:44:00) [6]

Проблема в чем не знаю, но знаю как уйти из нее.
Создай ярлык "shutdown.exe" и в параметрах пропиши:
Вырубить -s
Перегрузить -r
И врубай програмно! Пробовал не одно приложение не смогло остановить процесс. =)


afanasic   (2005-08-16 11:04:00) [7]

Хм... Тоже писал похожую прогу, но возникла проблема - комп подключен к серверу Novell и при использовании всяких методов, в т.ч. и предлагаемого ОС завершает все процессы, появляется окно "Завершение работы...", а потом выскакивает окно ввода логина Novell'а или в худшем случае - пустой экран, окончательное выключение не происходит... Кто знает, в чем проблема?


Kazakh   (2005-08-13 17:28:00) [8]

Kolan ©   (11.08.05 21:05) [2]

> Пишу точно такую же прогу

> код не мой

>> Забавно :)

Ничего забавного, просто одинаковая задача и все.


Anatoly Podgoretsky   (2005-08-11 21:09:00) [9]

Стандартный планировщик.


Kolan   (2005-08-11 21:05:00) [10]


> Пишу точно такую же прогу



> код не мой

Забавно :)


NightLord   (2005-08-11 19:58:00) [11]

Привет! Пишу точно такую же прогу. Вот код 100% рабочий под WinXP
за другие не отвечаю, код не мой!!!
function ExitWin(RebootParam: Longword): Boolean;
var
TTokenHd: THandle;
TTokenPvg: TTokenPrivileges;
cbtpPrevious: DWORD;
rTTokenPvg: TTokenPrivileges;
pcbtpPreviousRequired: DWORD;
tpResult: Boolean;
const
SE_SHUTDOWN_NAME = 'SeShutdownPrivilege';
begin
if Win32Platform = VER_PLATFORM_WIN32_NT then
begin
  tpResult := OpenProcessToken(GetCurrentProcess(),
    TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY,
    TTokenHd);
  if tpResult then
  begin
    tpResult := LookupPrivilegeValue(nil,
                                     SE_SHUTDOWN_NAME,
                                     TTokenPvg.Privileges[0].Luid);
    TTokenPvg.PrivilegeCount := 1;
    TTokenPvg.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
    cbtpPrevious := SizeOf(rTTokenPvg);
    pcbtpPreviousRequired := 0;
    if tpResult then
      Windows.AdjustTokenPrivileges(TTokenHd,
                                    False,
                                    TTokenPvg,
                                    cbtpPrevious,
                                    rTTokenPvg,
                                    pcbtpPreviousRequired);
  end;
end;
Result := ExitWindowsEx(RebootParam, 0);
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо