I'm afraid service packs are not a issue here. The problem exists deep inside comctl32.dll, where list control wndproc lives. From the "Default List View Message Processing" in MSDN: "WM_LBUTTONDOWN: Processed in different ways depending on whether a click or drag operation is being initiated. To determine which operation is involved, the list view control enters a modal message loop until either the button is released or the mouse is moved. [...] If dragging begins over the window background, the list view control enters another modal message loop, enabling the user to form a rectangle by dragging the mouse. Items within the rectangle are selected." The keywords are "modal message loop" - listctrl wndproc uses its own GetMessage/TranslateMessage/DispatchMessage loop, which you can't override - seems that you'll need a hook. Tomasz Sowinski -- http://www.shooltz.com.pl