Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > delphi. Уменьшить системное время


Автор: DRAGON88 3.1.2013, 13:06
Как уменьшить системное время на 1 час?? Например, на компьютере время 12:50. Нужно, чтобы при нажатии на кнопку время уменьшалось на 1 час, т.е. чтобы было 11:50 и т.д.
Погуглил, нашел такое код, только не догоняю как его использовать
Код

function SetPCSystemTime(tDati: TDateTime): Boolean;
var

tSetDati: TDateTime;
vDatiBias: Variant;
tTZI: TTimeZoneInformation;
tST: TSystemTime;
begin

GetTimeZoneInformation(tTZI);
vDatiBias := tTZI.Bias / 1440;
tSetDati := tDati + vDatiBias;
with tST do
begin
wYear := StrToInt(FormatDateTime('yyyy', tSetDati));
wMonth := StrToInt(FormatDateTime('mm', tSetDati));
wDay := StrToInt(FormatDateTime('dd', tSetDati));
wHour := StrToInt(FormatDateTime('hh', tSetDati));
wMinute := StrToInt(FormatDateTime('nn', tSetDati));
wSecond := StrToInt(FormatDateTime('ss', tSetDati));
wMilliseconds := 0;
end;
SetPCSystemTime := SetSystemTime(tST);
end;

Автор: Illusion Dolphin 3.1.2013, 14:21
Цитата

не догоняю как его использовать

Может быть так:
Код

SetPCSystemTime(Now - 1/24);


Добавлено через 1 минуту и 9 секунд
А ещё есть функция IncHour, для нелюбителей магических цифр

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)