|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
05.04.2007, 13:40 | #11 |
Участник клуба
Регистрация: 28.03.2007
Сообщений: 1,814
|
procedure TForm1.Button1Click(Sender: TObject);
var ndays: double; ticks: LongInt; btime: TDateTime; begin {Функция GetTickCount получает количество миллисекунд, прошедших с момента старта Windows} ticks := GetTickCount; {Чтобы получить дни, необходимо разделить на количество миллисекунд в дне, 24*60*60*1000=86400000} ndays := ticks/86400000; {теперь вычитаем из текущей даты полученное количество дней работы Windows} bTime := now-ndays; {показываем диалоговое окошко с сообщением} ShowMessage( FormatDateTime('"Windows started on" dddd, mmmm d, yyyy, ' + '"at" hh:nn:ss AM/PM', bTime) + #10#13 + 'Its been up for ' + IntToStr(Trunc(nDays)) + ' days,' + FormatDateTime(' h "hours," n "minutes," s "seconds"',ndays)); end; |
06.04.2007, 08:20 | #12 |
Участник клуба
Регистрация: 28.03.2007
Сообщений: 1,814
|
procedure TForm1.Button1Click(Sender: TObject);
var ndays: double; ticks: LongInt; btime: TDateTime; begin {Функция GetTickCount получает количество миллисекунд, прошедших с момента старта Windows} ticks := GetTickCount; {Чтобы получить дни, необходимо разделить на количество миллисекунд в дне, 24*60*60*1000=86400000} ndays := ticks/86400000; {теперь вычитаем из текущей даты полученное количество дней работы Windows} bTime := now-ndays; {показываем диалоговое окошко с сообщением} ShowMessage( FormatDateTime('"Windows started on" dddd, mmmm d, yyyy, ' + '"at" hh:nn:ss AM/PM', bTime) + #10#13 + 'Its been up for ' + IntToStr(Trunc(nDays)) + ' days,' + FormatDateTime(' h "hours," n "minutes," s "seconds"',ndays)); |
08.04.2007, 02:05 | #13 |
Редкий тунеядец
Форумчанин
Регистрация: 29.10.2006
Сообщений: 595
|
Вот эта прога показывет сколько времени работает комп, правда с точностью до минут! Суть тут в следующем, сперва мы смотрим сколько тактов процессор сделал с момента включения компа, затем через секунду мы определяем это опять, затем от большего меньшее... оп и мы знаем сколько тактов проц делает за секунду, далее делим общее количество тактов на количество тактов за секунду и имеем количество секунд с момента включения. Далее две простых операции и мы знаем сколько часов и минут с момента включения!
Код:
З.Ы. Главный плюс метода - простота, поэтому особых претензий прозьба не предъявлять, ведь речь шла об оптимизации! Последний раз редактировалось execom; 08.04.2007 в 02:11. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите оптимизировать процедуру | Cold Went | Компоненты Delphi | 4 | 29.04.2008 15:11 |
Помогите оптимизировать! | Altera | Общие вопросы Delphi | 6 | 25.03.2008 20:09 |
Помогите оптимизировать HTML код после Publisher | Гербера | HTML и CSS | 16 | 03.12.2007 11:46 |
Помогите оптимизировать сайт | Nadejda | HTML и CSS | 4 | 07.01.2007 21:04 |