скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Как установить системную дату и время программно



Билл Гейтс собрал Microsoft на конференцию и говорит:
- Господа, мы установили, что половина людей использующих Windows имеет возраст больше медианного! Другая потрясающая новость - это то, что другая половина людей имеет возраст ниже медианного!
- Простите, что такое медианный возраст?
- Этого мы еще не установили.

Следующие несколько строк кода позволяют установить системную дату и время без использования панели управления. Дата и время устанавливаются двумя раздельными компонентами TDateTimePicker. Дата и время декодируются и передаются в API функцию.

Из значения часа вычитается 2 для установки правильного времени.


procedure TfmTime.btnTimeClick(Sender: TObject);
var
  vsys: _SYSTEMTIME;
  vYear, vMonth, vDay, vHour, vMin, vSec, vMm: Word;
begin
  DecodeDate( Trunc(dtpDate.Date), vYear, vMonth, vDay );
  DecodeTime( dtpTime.Time, vHour, vMin, vSec, vMm );
  vMm := 0;
  vsys.wYear := vYear;
  vsys.wMonth := vMonth;
  vsys.wDay := vDay;
  vsys.wHour := ( vHour - 2 );
  vsys.wMinute := vMin;
  vsys.wSecond := vSec;
  vsys.wMilliseconds := vMm;
  vsys.wDayOfWeek := DayOfWeek( Trunc(dtpDate.Date) );
  SetSystemTime( vsys );
end;






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook