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

Вниз

изменить/вернуть обратносистемную дату с помощью DateTimePicker   Найти похожие ветки 

 
Garacio ©   (2007-01-18 08:54) [0]

Приветствую всех!
Мне необходимо во время работы с программой менять и возвращать системную дату, для этого я выбрал компоненты: DateTimePicker (для того, чтобы изменить дату) и Button2 (чтобы нажатием на неё вернуть первоначальную). Изменять дату в DateTimePicker пробую так:
procedure TForm1.Button1Click(Sender: TObject);
var vsys : _SYSTEMTIME;
   vYear, vMonth, vDay : Word;
begin
DecodeDate( Trunc(DateTimePicker1.Date), vYear, vMonth, vDay );
vsys.wYear := vYear;
vsys.wMonth := vMonth;
vsys.wDay := vDay;
vsys.wDayOfWeek := DayOfWeek( Trunc(DateTimePicker1.Date) );
SetSystemTime( vsys );
end;

Эффекта никакого :-) ?!?
Как мне исправить код и что написать в процедуре нажатия кнопки (Button2) для возврата времени?


 
Elen ©   (2007-01-18 09:12) [1]


> Garacio

Возможно понадобятся админ права :

procedure TForm1.DateTimePicker1Change(Sender: TObject);
var s:_SYSTEMTIME;  
begin
GetSystemTime(s);
DecodeDate(DateTimePicker1.DateTime,s.wYear,s.wMonth,s.wDay );
if SetSystemTime(s) then caption:="ok" else RaiseLastWin32Error;
end;


 
novill ©   (2007-01-18 09:18) [2]

> Эффекта никакого

чтобы узнать причины добавь строчку
caption:=SysErrorMessage(GetLastError);
и посмотри что пишут.


 
Garacio ©   (2007-01-18 10:47) [3]

Сейчас испытаю! А как по-поводу:
нажатия кнопки (Button2) для возврата времени?


 
Elen ©   (2007-01-18 10:53) [4]


>  для возврата времени?

Возврата куда? и какого конкретно времени?


 
ЮЮ ©   (2007-01-18 10:53) [5]


> Сейчас испытаю! А как по-поводу:


Вернуть утраченное нельзя.Будучи установленным любое время станет системным. :) Запомни до изменения и измени опять.


 
Garacio ©   (2007-01-18 11:22) [6]

Вернуть утраченное нельзя.
С оговоркой: если первоначально не сохранить в значении какой-либо переменной! =)
Только, это не Х:=5, а "дата", поэтому я пока не знаю как присвоить переменной значение DateTimePicker при FormCreate и при нажатии кнопки  вернуть в DateTimePicker это значение!


 
Elen ©   (2007-01-18 11:26) [7]


> Только, это не Х:=5, а "дата", поэтому я пока не знаю как
> присвоить переменной значение DateTimePicker при FormCreate
> и при нажатии кнопки  вернуть в DateTimePicker это значение!


var    dt:TDateTime;
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  dt:=DateTimePicker1.DateTime;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
DateTimePicker1.DateTime:=dt;
end;


 
Garacio ©   (2007-01-18 11:30) [8]

Elen, Вы -ЗОЛОТО!!!


 
ЮЮ ©   (2007-01-18 11:31) [9]


> DateTimePicker1.DateTime:=dt;


Так и время "собъется"


 
Garacio ©   (2007-01-18 11:34) [10]

Что значит "собъется", прошу прокомментировать!


 
Elen ©   (2007-01-18 11:34) [11]


> Так и время "собъется"

Ничего. Время штука временная, собъется и пройдет. :). Ну по-моему автору это и надо, хотя выставление времени прокатит ИМХО только при соответствующих правах типа админ.



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

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

Наверх





Память: 0.47 MB
Время: 0.038 c
15-1168873817
pasha_golub
2007-01-15 18:10
2007.02.04
Адрес веб-интерфейса для регистрации Турбо Делфай Проф


15-1168361722
Alexis
2007-01-09 19:55
2007.02.04
Две книги по AI (ИИ)


15-1169022430
shikitomedo2
2007-01-17 11:27
2007.02.04
Как распознать на собеседовании неадекватного работодателя?


2-1169204894
Bobs
2007-01-19 14:08
2007.02.04
Проблема с программой


3-1163066669
Crim
2006-11-09 13:04
2007.02.04
Использование Progress Bar a





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский