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

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

Delphi 7 + KOL, проблема [Delphi, Windows]


Фунтик ©   (2008-04-12 13:20:00) 

Есть объект, объявленный как:

TMyManager = class
MyConnecttion: TMyConnection;
procedure ButtonOKPressed(Sender: PControl; var Mouse: TMouseEventData);
public
Constructor Create(AParent: PControl);
Destructor Destroy;
end;

TMyConnection выглядит так:

TMyConnection = class
private
GetSAddrSocket: PAsyncSocket;
ConSocket: PAsyncSocket;
MajorVer,
MinorVer,
Ver: Cardinal;

ServerAddr: String;
ServerPort: String;
public
function GetStatusName(Status: Cardinal): String;

constructor Create;
destructor Destroy; override;
//
end;

Дык вот, при использовании такого события, внутри TMyManager:

procedure TMraManager.ButtonOKPressed(Sender: PControl; var Mouse: TMouseEventData);
begin
MyConnection.ChangeStatus($00000002);
end;

получаю Runtime Error, но если метод этого класса не вызывать, а допустим просто MsgOk('1'), то все нормально


Фунтик   (2008-04-13 16:55:00) [1]

Спасибо всем, проблема решена


D[u]fa   (2008-04-13 13:04:00) [2]

Фунтик, если ошибка идет до то скорее всего к тому момент класс еще не создан, код из твоего 2-ого поста когда выполняется то?


Дмитрий К   (2008-04-13 08:48:00) [3]


> Фунтик ©   (12.04.08 13:32) [2]

А где тут создание MyConnection?


Фунтик   (2008-04-13 06:18:00) [4]

с ченджстатусом все нормально (ставлю брекпоинт на первую строку в этом методе - до нее не доходит, ошибка вылазиет до)


D[u]fa   (2008-04-12 16:39:00) [5]

ну так надо трейсить ChangeStatus


Фунтик   (2008-04-12 13:38:00) [6]

Что-я намудрил, вобщем TMRAManager = TMyManager


Фунтик   (2008-04-12 13:32:00) [7]

Да, MyConnection создан в Project1.dpr, вот так:
var
 MraMgr: TMRAManager;

begin
 MraMgr := TMRAManager.Create(Applet);


ChangeStatus это метод, который принимает на входе Cardinal и меняет статус согласно ему (программа - IM messenger)
procedure TMyConnection.ChangeStatus(Status: Cardinal);


D[u]fa   (2008-04-12 13:28:00) [8]

так а MyConnection создан? и что за ChangeStatus


Наверх

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