Я не уверен, объяснил ли я это как можно лучше, но мы идем ...
У меня есть 2 пользовательских компонента в форме, которые связаны во время разработки через IDE. Всякий раз, когда я вызываю процедуру из компонента, я получаю нарушение прав доступа,
Нарушение доступа по адресу 0049A614
в модуле 'Project2.exe'. Читать о
адрес 00000034.
Это небольшой раздел моего кода
TMyClient = class(TClientSocket)
{...}
end;
и ...
TPresence = class(TComponent)
private
ftheClient: TMyClient
public
procedure SetStatus(status: string);
published
property UserName : string read fUserName write fUserName;
property theClient: TMyClient read ftheClient write ftheClient;
end;
procedure TPresence.SetStatus(status: string);
begin
try
***** if theClient = nil then
Exception.Create('theClient is Nil');
except
on e:Exception do
MessageDlg(e.classname+', '+e.message, mtWarning, [mbOK], 0);
end;
{...}
end;
0049A614 находится на *****, и IDE останавливается здесь.
Я также пытался выполнить задание во время выполнения с
Presence1.theClient := MyClient1;
без удачи
с использованием процедур из Presence1 или MyClient1, которые не зависят друг от друга, работают нормально.
Delphi 7
Follow Up:
Из комментариев Мги, я переосмыслил об этом.
Я удалил компонент TPresence из формы (который вызвал некоторые странные ошибки IDE, которые могли иметь к этому какое-то отношение) и создал время разработки, назначив все, что было необходимо. Теперь это работает, но возвращение компонента TPresence в from возвращает ошибку.
Спасибо за вашу помощь, ребята, я должен быть в состоянии решить этот вопрос сейчас, если я не могу плохо открыть еще один вопрос:)