Вниз
Скачать: CL | DM;

Callback функции...   Найти похожие ветки 

 
Makhanev A.S. ©   (2003-10-13 00:01) [0]

Есть ли какие-то особенности в работе с объектами внутри callback функции?
При обращении к объекту имею AV.
Перед и после вызова ф-ции обращение к объекту проходит нормально.


procedure TProcMon.UpdateWndList;

function AnalyzeWnd(CurHandle: THandle): Boolean; stdcall;
begin
FItems.OwnsObjects := True; //имеем AV, FItems - поле класса TProcMon типа TObjectList,
...
end;
begin
FItems.OwnsObjects := True; // всё ОК
EnumWindows(@AnalyzeWnd, 0);
FItems.OwnsObjects := True; // всё ОК
end;


 
Palladin ©   (2003-10-13 00:13) [1]

ты чего делаешь парень?
ты справку то смотрел?

какой прототип у функции EnumWindowProc?


 
Makhanev A.S. ©   (2003-10-13 00:24) [2]

Смотрел конечно.
BOOL CALLBACK EnumWindowsProc(

HWND hwnd, // handle to parent window
LPARAM lParam // application-defined value
);

Но что это меняет???
Если я объявлю лишний параметр, ничего не изменится.


 
Palladin ©   (2003-10-13 00:37) [3]

function AnalyzeWnd(CurHandle: hwnd;p:LPARAM): Bool; stdcall;
begin
result:=true;
TProcMon(p).FItems := True;
end;

procedure TProcMon.UpdateWndList;

begin
FItems := True;
EnumWindows(@AnalyzeWnd, integer(self));
FItems := True;
end;


 
Palladin ©   (2003-10-13 00:38) [4]

количество и порядок параметров многое значит
и не забывай про передаваемый неявно self в методах классов


 
Makhanev A.S. ©   (2003-10-13 00:42) [5]

Теперь мне стало понятно.
Большое спасибо за помощь!



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
1-74234
Katik
2003-10-13 16:55
2003.10.23
Работа с битами


3-74024
MsGuns
2003-10-02 12:06
2003.10.23
Insert в редактируемом TIBQuery


7-74504
Stas
2003-08-07 11:38
2003.10.23
Как узнать когда закрылось приложение


1-74259
Брат
2003-10-13 12:17
2003.10.23
Program reset


14-74475
Alibaba
2003-10-02 16:45
2003.10.23
Количество листов в книге Excel




   Наверх