Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Привет!
PD>Проверить в его стиляж наличие WS_V(H)SCROLL
PD>if (GetWindowLong(hWnd,GWL_STYLE) & WS_VSCROLL)
PD> // есть вертикальный скроллбар
Это только один из возможных вариантов т.е покрывает только часть задачи
Целиком задачу вообще невозможно решить
это даже не говоря о том что есть ownerdraw тулбары
Есть только частные случаи например
Когда хэндл указывает на окошко IE
пройдет вариант что то вроде этого
CString strWindowClassName;
GetClassName(pWnd->GetSafeHwnd() , strWindowClassName.GetBuffer(MAX_PATH), MAX_PATH);
strWindowClassName.ReleaseBuffer();
if ( 0 == strWindowClassName.Compare(_T("Internet Explorer_Server")))
{
IsScrollWindow = TRUE; // возможно есть вертикальный скроллбар.
}
что бы быть 100% уверенным что есть скроллбар нужно получить IHTMLDocument2 и хорошенько пропарсить там разобрать на фреймы и тд...
тут тебе поможет
How To Get IHTMLDocument2 from a HWND
а так же
Measuring Element Dimension and Location
если нужно будет управлять этим окном то опят же через IHTMLDocument2
Т.е уже получается 2 частных случая
Когда управление окном происходит через CScrollBar практичесски невозможно сказать каким окном он управляет
В принципе есть интерестные попытки определит есть ли скролл у окна но они тоже работают не во всех случаях..

(если нужно могу поведать)
Исспользую совокупность всех средст возможно и можно получить более — менее хороший результат