Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ведение лога [D7, XP]


Страницы:   1 2

MZG ©   (2008-04-30 10:33:00) 

Как реализовать ведение лога?
Покажите примеры пожалуйста


Ega23   (2008-04-30 14:38:00) [1]


> CheckUrl - эта ф-ция даже судя по названию не имеет ничего
> общего со слежением за подключенностью к инету.


Это уже не важно.


Сергей М.   (2008-04-30 14:37:00) [2]


> программа следит за подключением к инету


Check Url- эта ф-ция даже судя по названию не имеет ничего общего со слежением за подключенностью к инету.


Ega23   (2008-04-30 14:32:00) [3]


> не получается :((((((


Могу посоветовать только поменять профессию...


{RASkov}   (2008-04-30 14:04:00) [4]

например поле формы: OldState: Integer;
.................
Timer.Tag:=ORD(Connected);
if OldState<>Timer.Tag then begin
...
 OldState:=Timer.Tag;
end;


MZG   (2008-04-30 14:02:00) [5]

не получается :((((((


Ega23   (2008-04-30 14:01:00) [6]


> так?


проверь.   :)

З.Ы. Блин, вот тебе не стыдно? Я тебе в [10] весь алгоритм описал, мне что, ещё и код за тебя наваять???


{RASkov}   (2008-04-30 13:59:00) [7]

> [15] MZG   (30.04.08 13:57)
> так?

Еще думай :)


MZG   (2008-04-30 13:57:00) [8]

Хорошо!

1. Создаем глобальную переменную

var i: integer;

2. свойство Enabled компонента Timer1 установлено в false
3. при запуске формы идет проверка на. Если свойство tag таймера установлено в 0 (ноль), то пишем в лог что все ок, иначе если tag имеет 1 (единицу), то пишем в лог что все плохо....

так?


Ega23   (2008-04-30 13:53:00) [9]


> То есть не должен использоваться или вообще не используется?
>  Чета не пойму наводку. Поясни :)


Подумай.


MZG   (2008-04-30 13:52:00) [10]

То есть не должен использоваться или вообще не используется? Чета не пойму наводку. Поясни :)


Ega23   (2008-04-30 13:47:00) [11]


> может быть так?


Нет, не так. Так у тебя обязательно будет запись в логе на каждую сработку таймера. А нужно - при изменении состояния.
Подумай ещё немного.
Даю наводку: ok у тебя нигде не используется.


MZG   (2008-04-30 13:41:00) [12]

может быть так?


procedure TForm1.Timer1Timer(Sender: TObject);
var url: string;
begin
 ok:= timer1.Tag;
 if not checkurl(url) then
 begin
   timer1.Tag:=1;
   Log(DatetimeToStr(Now) + ' : Disconnect');
 end else
   timer1.Tag:=0;
   Log(DatetimeToStr(Now) + ' : Connected');
end;


Ega23   (2008-04-30 13:33:00) [13]

За такую мнемонику - убивать надо.

Теперь по существу:
1. Заводим глобальную переменную (поле формы, можно воспользоваться Timer1.Tag)
2. Изначально инициализируем её как False
3. В теле таймера: если CheckUrl(url)<> переменной, то состояние изменилось.
4. Если состояние изменилось, то пишем в лог (connected или disconnected)
5. Запоминаем текущее состояние.

Как-то так.


MZG   (2008-04-30 13:26:00) [14]

Вот кусок


procedure TForm1.Timer1Timer(Sender: TObject);
var url: string;
begin
 url:=' http://www.yandex.ru';
 if CheckUrl(url)then
 begin
 //  OperBegin := Now;
 timer3.Enabled:= true;
 timer2.Enabled:= true;

 label1.Visible:= false;
 edit1.Enabled:= true;
 label2.Visible:= true end else
 begin
 timer3.Enabled:= false;
 timer2.Enabled:= false;
 label2.Visible:= false;
 edit1.Enabled:= false;
 label1.Visible:= true;

 end;
end;


p.s. timer2, timer3 - специально для визуализации т.к. для эффекта


Ega23   (2008-04-30 13:22:00) [15]


> MZG   (30.04.08 13:20) [6]


Я же не знаю, что там у тебя на таймере происходит.


Palladin   (2008-04-30 13:21:00) [16]

А что имеется ввиду "У меня программа следит за подключением к инету" ???


MZG   (2008-04-30 13:20:00) [17]

Что имеется в виду под Connected???


Ega23   (2008-04-30 13:18:00) [18]

if not Connected then Log(DatetimeToStr(Now) + ' : connection lost');


MZG   (2008-04-30 13:05:00) [19]

алё? :)


MZG   (2008-04-30 12:34:00) [20]

С примером разобрался!
Только не понятно как использовать в таймере?
У меня программа следит за подключением к инету.
Если соединение установлено, то пишет в лог.
Если соединение разорвано, то тоже пишет в лог что отсутствует.
В таймере то и дело пишет "фиксированные" значение.
Подскажите пожалуйста


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо