Цитата
Хм.. попробовал тормозить все классы, стоящие до TfrmMan (и вместе, и по отдельности - они там повторяются, кстати) - окошко квипа так же появлялось
Неправда
if (pos(UpperCase('tapplication'), UpperCase(GetClName(myWParam))) > 0) or
(pos(UpperCase('madToolsMsgHandler'), UpperCase(GetClName(myWParam))) > 0) or
(pos(UpperCase('madExceptWndClass'), UpperCase(GetClName(myWParam))) > 0) or
(pos(UpperCase('tfrmcore'), UpperCase(GetClName(myWParam))) > 0) then
begin
PostMessage(RHookRec^.AppWindow, MY_MESSAGE, myWParam, 0);
result := 1; Exit;
end;
Этого достаточно, чтоб убить QIP. Ну, в смысле, то окно выбора аккаунта. Тебе надо было всего навсего добавить в возвращаемую в приложение строку еще и хендл объекта и хендл его предка, и посмотреть, от чего же так зависит появление окна на экране. И кто владелец того окна, на котором заканчивается лог (и выбрасывается окно с сообщением об ошибке). Последовательно проходишь назад, уничтожая всех предков, и вот оно, чудо !!!
Так что не надо никаких бомб, опытный снайпер с хорошей оптикой может принести гораздо больше вреда