Здравствуйте.
Устанавливаю хук на создание окна.
Фильтрующая функция выглядит так:
LRESULT CALLBACK CreateHook(int code,WPARAM wparam,LPARAM lparam)
{
if(code==HCBT_CREATEWND)
{
CREATESTRUCT *cs=((CBT_CREATEWND*)lparam)->lpcs;
try
{
if(strcmp(cs->lpszClass, "IEFrame")==0)
{
cs->dwExStyle |= WS_EX_TOOLWINDOW;
//для того что бы не появлялась кнопка на таскбаре
}
}
catch(...)
{
}
}
return CallNextHookEx(NULL,code,wparam,lparam);
}
Кнопка на таксбаре всё равно появляется. Почему?
Есть ли способ предотвратить появления кнопки на таскбаре при помощью хуков?
И ещё — иногда при попытке прочитать строку из cs->lpszClass, возникает ошибка.
Пишет, что нет прав для чтения памяти по такому-то адресу.
Получается в системе есть такие окна, имена классов которых невозможно получить?