Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Lenk_Leshk Гость
|
Добавлено: Ср Окт 09 2002 15:50 Заголовок сообщения: MFC+API |
|
|
Не дайте умереть! Пытаюсь вытащить список всех раскрытых окон, пользуясь EnumСhildWindows. В качестве второго параметра ( указатель на callback function ) посылаю указатель на функцию EnumProc (bool EnumProc(HWND hWnd, long ) ), которую написала сама. Компиляцию прохожу без проблем, а в конце получаю окно Debug Error и он мне там пишет, что что-то не так с указателем на callback function Что я делаю не так??????? Подскажите, не бросайте в беде!!!!!!!!!! |
|
Вернуться к началу |
|
|
Alexy
Зарегистрирован: 22.10.2003 Сообщения: 48
|
Добавлено: Сб Окт 12 2002 14:09 Заголовок сообщения: Re: MFC+API |
|
|
Вообще-то без кода трудно понять где ошибка, разве что кроме 2-х неточностей в декларации callback: BOOL CALLBACK EnumChildProc( HWND hwnd, // handle to child window LPARAM lParam // application-defined value );
1. Функция возвращает BOOL, а не bool. 2. Функция должна быть CALLBACK (calling convention __stdcall).
1-я неточность приведёт к тому что твоя EnumProc будет возвращать неопределённое значение (скорей всего всегда true) 2-я неточность может быть причиной падения программы. Если в проекте Visual Studio тип вызова по умолчанию установлен в __cdecl, то при вызове EnumProc программа упадёт. |
|
Вернуться к началу |
|
|
|