![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Почему при присвоении полю потока значения возникает ошибка? [D6, WinXP]
Aleksandr © (2002-06-07 17:04:00)Есть у меня поток. Большую часть времени он Suspended. Есть у него пропертя, доступ к которой осуществляется через процедуру этого потока:
private
FEvent : TMailEvent;
procedure SetMailEvent(AEvent : TMailEvent);
public
property Event : TMailEvent read FEvent write SetMailEvent;
Когда из другого потока этому свойству что-либо присваивается:
SmtpThread.Event:=seGetOrders, выполняется его его SetMailEvent:
begin
while (FEvent<>seNone) AND NOT Suspended do
Application.ProcessMessages; //ждать завершения обработки
FEvent:=AEvent;
Resume
end;
Execute:
repeat
case FEvent of
seGetOrders : GetOrders;
...
end;
FEvent:=seNone;
Suspend
until Terminated
Так вот, при входе в SetMailEvent при попытке просто обратиться к значению FEvent Delphi показывает неаксессибельное значение для него, а выполнение первой строки вызывает ошибку... Что тут неправильного?
Digitman (2002-06-07 18:33:00) [1]>>"..выполнение первой строки вызывает ошибку"
Какую ? Дословно : класс исключения и сообщение об исключении ?