IE9 no puede desencadenar evento de desplazamiento en HTMLWindow2 en BHO

IE puede disparar un evento de desplazamiento al usar Modo de documento: IE7 o IE8, perofalla para dispararonscroll event cuando se utiliza el modo de documento: IE9. También registro el evento onscroll en documentElement, reacciona de la misma manera.

La clase BHO utiliza:

public IDispEventImpl<3, CHelloWorldBHO, &DIID_HTMLWindowEvents2, &LIBID_MSHTML, 4, 0>. 

Y hundir el evento:

BEGIN_SINK_MAP(CHelloWorldBHO)
SINK_ENTRY_EX(1, DIID_DWebBrowserEvents2, DISPID_DOCUMENTCOMPLETE, OnDocumentComplete)
SINK_ENTRY_EX(1, DIID_DWebBrowserEvents2, DISPID_NAVIGATECOMPLETE2, OnNavigateComplete2)
SINK_ENTRY_EX(1, DIID_DWebBrowserEvents2, DISPID_WINDOWSTATECHANGED, OnWindowStateChanged)
SINK_ENTRY_EX(3, DIID_HTMLWindowEvents2, DISPID_HTMLWINDOWEVENTS2_ONSCROLL, OnScroll)
END_SINK_MAP()

Luego, avíselo al objeto de ventana enDocument Complete:

CComQIPtr<IHTMLDocument2> spHTMLDoc = spDispDoc;
CComQIPtr<IHTMLWindow2> spTempWindow2;
spHTMLDoc->get_parentWindow(&spTempWindow2);

IDispEventImpl<3, CHelloWorldBHO, &DIID_HTMLWindowEvents2, &LIBID_MSHTML, 4, 0>::DispEventAdvise(spTempWindow2);

He estado trabajando en este problema durante bastante tiempo. ¿Algunas ideas? ¡Muchas gracias

Respuestas a la pregunta(2)

Su respuesta a la pregunta