Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.09.09;
Скачать: [xml.tar.bz2];

Вниз

Перезагрузка   Найти похожие ветки 

 
Daedr   (2007-08-16 16:28) [0]

Подскажити, как перезагрузить комп при выполнении условия "ProgressBar1.Position=ProgressBar1.max"?


 
Ega23 ©   (2007-08-16 16:30) [1]

Также, как и при условии Label1.caption="RTFM"


 
Anatoly Podgoretsky ©   (2007-08-16 16:41) [2]

> Daedr  (16.08.2007 16:28:00)  [0]

Ко мне на сайт


 
Сергей М. ©   (2007-08-16 16:46) [3]

Ну и нахрен мне надо, чтобы какой-то там Daedr перезагружал мой комп, когда у этого самого Daedr"а приключился катаклизм вида "ProgressBar1.Position=ProgressBar1.max" ?)


 
Юрий Зотов ©   (2007-08-16 17:04) [4]

> Сергей М. ©   (16.08.07 16:46) [3]

Это он делает диалог типа "компьютер будет перезагружен через N секунд". Например, для инсталлятора.


 
DevilDevil ©   (2007-08-16 17:12) [5]

перезагрузка - ладно... а как выключить, кто-нибудь знает?


 
Ega23 ©   (2007-08-16 17:14) [6]


> перезагрузка - ладно... а как выключить, кто-нибудь знает?


ExitWindowsEx(EWX_SHUTDOWN or EWX_FORCE, 0);?


 
Юрий Зотов ©   (2007-08-16 17:15) [7]

> DevilDevil ©   (16.08.07 17:12) [5]

Насколько помню, так же, только флаг другой указывается.


 
Ega23 ©   (2007-08-16 17:16) [8]

Точнее, вот такой код был для аварийного завершения при определённом уровне зарядки батарей:


function TStandartUPS.ShutdownOS: Boolean;
const
 SE_SHUTDOWN_NAME="SeShutdownPrivilege";
var
 hToken: THandle;
 tkpNew, tkpPrevious: TTokenPrivileges;
 iLength: Cardinal;
begin
 Result:=False;

 // Получаем токен процесса
 if not OpenProcessToken(GetCurrentProcess,
             TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken) then
   Exit;

 // Получаем LUID для привилегии завершения работы системы
 LookupPrivilegeValue(nil, SE_SHUTDOWN_NAME, tkpNew.Privileges[0].Luid);
 tkpNew.PrivilegeCount:=1; {установка одной привилегии}
 tkpNew.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED;

 // Получаем привилегию завершения работы системы для процесса
 iLength:=SizeOf(TTokenPrivileges);
 AdjustTokenPrivileges(hToken, False, tkpNew, SizeOf(TTokenPrivileges),
   tkpPrevious, iLength);

 // Невозможно проверить возвращаемое значение функции AdjustTokenPrivileges
 if GetLastError<>ERROR_SUCCESS then
   Exit;

 // Завершаем работу системы и заставляем все приложения закрыться
 Result:=ExitWindowsEx(EWX_SHUTDOWN or EWX_FORCE, 0);
end;

//******************************************************************************


 
DevilDevil ©   (2007-08-16 18:37) [9]

> Ega23 ©   (16.08.07 17:14) [6]

Спасибо, опробовал - всё работает.
А то с ExitWindows под XP не получалось, только завершить сеанс.
+ где то когда то надыбал код перезагрузки... выключения до сегодняшнего дня не видел.

День точно не прошёл зря!


 
Eraser ©   (2007-08-16 19:50) [10]


> DevilDevil ©   (16.08.07 18:37) [9]

военная тайна
http://www.google.ru/search?hl=ru&q=delphi+%D0%B2%D1%8B%D0%BA%D0%BB%D1%8E%D1%87%D0%B8%D1%82%D1%8C+%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=


 
DevilDevil ©   (2007-08-17 10:03) [11]

> Eraser ©   (16.08.07 19:50) [10]

1) в те давние времена поиска, я не знал о существовании Гугла
2) какой то крутой код я всё же нашёл... только он не работал :)
3) бегло просмотрел линки, такой крутой как у Ega23, не нашёл
Bonus) ты понял, почему при Visible := true; может возникать подвисание?


 
Cj ©   (2007-08-17 11:02) [12]

Можно еще csrss.exe завершить :)



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.09.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.046 c
2-1187259357
DevilDevil
2007-08-16 14:15
2007.09.09
GetFileTime для выполняемого exe


2-1187263551
r.o.o.t
2007-08-16 15:25
2007.09.09
SQL запрос


4-1174460803
Sergey Ivanov
2007-03-21 10:06
2007.09.09
Запись в журнал приложений


15-1186590146
Mozart
2007-08-08 20:22
2007.09.09
Я в шоке от таких запросов!!!!


3-1178904669
Dmitry_177
2007-05-11 21:31
2007.09.09
SQL запрос





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский