Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.23;
Скачать: 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 вся ветка

Текущий архив: 2003.10.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
7-74492
Fast
2003-08-09 21:28
2003.10.23
Как проверить установлен ли ActiveX


14-74453
Knight
2003-10-03 16:54
2003.10.23
Кто-нибудь один... не надо много


11-74109
Alexander
2002-10-11 14:22
2003.10.23
Toolbar - мысли


8-74325
wara
2003-06-21 13:24
2003.10.23
Понижение числа точек в JPG- файле


1-74215
jazz
2003-10-09 18:32
2003.10.23
Запуск exe файла