Главная страница
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.015 c
1-74251
Александр М.
2003-10-12 18:50
2003.10.23
TreeView


14-74382
Knight
2003-10-02 18:49
2003.10.23
Как вы относитесь к журналу Хакер?


4-74533
imp403
2003-08-16 12:55
2003.10.23
Как убрать приложение из окна вызываевамого по Alt+Tab и из Диспе


1-74214
GreySerg
2003-10-09 19:53
2003.10.23
Есть ли в Delphi функция , которая возвращает из URL файл ?


7-74492
Fast
2003-08-09 21:28
2003.10.23
Как проверить установлен ли ActiveX