Visual Studio 2010 and scroll wheel

x64 Replacement/Alternative to Microsoft's IntelliMouse application.
Forum rules
Please read the forum rules before posting for the first time.
The more information you can provide, the quicker and more accurately someone can help.
NOTE: To reduce spam, new users can not post links, files or images until they have at least 4 posts.
Post Reply
clm_de
New User
Posts: 13
Joined: Wed Jun 29, 2011 11:33 am

Visual Studio 2010 and scroll wheel

Post by clm_de »

I use XMBC to get the "Make scroll wheel scroll window when under cursor" functionality, since I deem Microsoft's original "input focus" method quite completely unuseable.

This works (almost) perfectly. A great tool, something whithout which I'd kill my mouse.

Unfortunately, I had to upgrade my development environment from Visual Studio 2008 to Visual Studio 2010. In '2008, XMBC's mouse wheel scrolling worked in nearly every window, but in '2010 it does not work at all, that is, I have to click in every window, every dialogue and on every bloody control for it to get the scroll wheel messages.

Attempts to use the "Advanced Window Scrolling" functionality fail, since both the Window Class name and Parent Class name seem to contain characters which confuse XMBC.

Opening the "find window" editor, I choose a text editor window in VS2010 and get for instance "HwndWrapper[DefaultDomain;;a2f30edb-7850-4f40-a487-958dbb9e770e]" (as class name) and "HwndWrapper[DefaultDomain;;7af17adc-e1b4-42e6-8835-cccb1ab57190]" (as parent class name), but upon re-opening the "find window editor", the class name gets shortened to "HwndWrapper[DefaultDomain" and the parent class name gets scrambled to "a2f30edb-7850-4f40-a487-958dbb9e770e]", which is the rest of the original class name and not the parent class name at all.

A peek in the XML configuration file shows this as

Code: Select all

<Application Name="W:devenv.exe;HwndWrapper[DefaultDomain;;00c003d5-6d4e-4423-aeb0-1cea8d1842a6];HwndWrapper[DefaultDomain;;7af17adc-e1b4-42e6-8835-cccb1ab57190]" Description="" Enabled="true" InvertScrolling="false" ScrollPages="false" AxisLocking="true" ScrollLines="3" AdvScrollMethod="8" AdvScrollVert="1" AdvScrollHorz="1">
The problem here is the use of semicola (;) as a sub-item separator within the "Application Name" string. Attempts to replace them by &#x3b; fail, XMBC then consumes all available processor time.

Anyway, even if this worked, it wouldn't be a solution, since every edit window inside VS2010 has a different window class name.

Do you see any chance for a remedy? Any chance to get the scroll wheel back to it's functionality?

Thanks for any enlightening thoughts

Postscriptum:

I forgot to mention the environment:

Windows 7 SP1 x64 Enterprise
Visual Studio 2010
Logitech RX250 optical wheel mouse, using Windows' own HID Mouse driver for it.
User avatar
phil
Site Admin
Posts: 7670
Joined: Sun Apr 06, 2003 11:12 pm

Re: Visual Studio 2010 and scroll wheel

Post by phil »

Well right now I can confirm I have the same problem in VS2010 (which is good as the chances are better of being able to fix it). However, it is rather strange. I will have to investigate further - thanks for all the detail - I think that will help :)

I don't know when I will get a chance to look at it (quite busy with other things right now) but its now on the todo list (and as I'm thinking of migrating XMBC code from 2008 to 2010, this is a must fix if possible ASAP as far as I am concerned).

Thanks,
Phil
--[ Phil ]--
--[ Administrator & XMBC Author ]--
Logitech G9/G604/M720/MX518, Microsoft Intellimouse, Trust 16341 BT Mouse
Windows 10 x64, AMD Ryzen 5900x, MSI x570 Tomahawk, 32GB DDR4,
nVidia RTX 2070s, Evo 970 1Tb NVME, 2x2TB WD Black (RAID1)
clm_de
New User
Posts: 13
Joined: Wed Jun 29, 2011 11:33 am

Re: Visual Studio 2010 and scroll wheel

Post by clm_de »

Thanks for your very fast reply. So there is some hope, that's good.

If there's any way I can help you I'd do so, being a developer myself I could run a few tests on my machine, what window class names are being used etc.

Maybe the general problem is inside the algorithm you use to determine what window to send the scroll wheel messages to.
Spy++ shows that the class names used by VS2010 are quite different from what other applications use. There are lots of class names using the HwndWrapper[]-style with semicola inside the brackets.

Thanks,
Claudius
User avatar
phil
Site Admin
Posts: 7670
Joined: Sun Apr 06, 2003 11:12 pm

Re: Visual Studio 2010 and scroll wheel

Post by phil »

My main dev machine has VS6 (!!) through 2010 installed so I think I should be able to diagnose it but I will let you know if there is anything else I need from you - and perhaps you can help me test any solution I find (when I get that far).

As I said, I don't know when I will get a chance to look at it, there are a few bugs stacking up now so its about time I had a go, but I do have other commitments which have to take priority over XMBC which is just a hobby/spare time project. Maybe I can get some time this weekend but no promises!

Thanks,
Phil
--[ Phil ]--
--[ Administrator & XMBC Author ]--
Logitech G9/G604/M720/MX518, Microsoft Intellimouse, Trust 16341 BT Mouse
Windows 10 x64, AMD Ryzen 5900x, MSI x570 Tomahawk, 32GB DDR4,
nVidia RTX 2070s, Evo 970 1Tb NVME, 2x2TB WD Black (RAID1)
User avatar
phil
Site Admin
Posts: 7670
Joined: Sun Apr 06, 2003 11:12 pm

Re: Visual Studio 2010 and scroll wheel

Post by phil »

OK, Ive had a look and it seems that there is a problem with WPF windows (of which VS2010 is one).

I found this on connect: http://connect.microsoft.com/VisualStud ... de-windows

And after reading all the comments, I found something from MSFT that says VS2010 routes VS_SCROLL and VS_HSCROLL so I have created a new scroll method (method 5) for WPF scroll that essentially sends the WM_VSCROLL and WM_HSCROLL directly to the window.

I also fixed the problem using ; as a separator its not a little more resilient I think :)

It seems to work so the next version will have the ability to scroll VS2010 when not active, using advanced scrolling method 5.

Thanks,
Phil
--[ Phil ]--
--[ Administrator & XMBC Author ]--
Logitech G9/G604/M720/MX518, Microsoft Intellimouse, Trust 16341 BT Mouse
Windows 10 x64, AMD Ryzen 5900x, MSI x570 Tomahawk, 32GB DDR4,
nVidia RTX 2070s, Evo 970 1Tb NVME, 2x2TB WD Black (RAID1)
User avatar
phil
Site Admin
Posts: 7670
Joined: Sun Apr 06, 2003 11:12 pm

Re: Visual Studio 2010 and scroll wheel

Post by phil »

Ive put together a new beta prior to releasing v2.1 which will be a bugfix point release with no new features.
There are only about 6 changes - minor bug fixes reported since v2.0 so I hope the release cycle wont be too long this time!

If you want to test the beta let me know and I'll PM you a link.

Thanks,
Phil
--[ Phil ]--
--[ Administrator & XMBC Author ]--
Logitech G9/G604/M720/MX518, Microsoft Intellimouse, Trust 16341 BT Mouse
Windows 10 x64, AMD Ryzen 5900x, MSI x570 Tomahawk, 32GB DDR4,
nVidia RTX 2070s, Evo 970 1Tb NVME, 2x2TB WD Black (RAID1)
clm_de
New User
Posts: 13
Joined: Wed Jun 29, 2011 11:33 am

Re: Visual Studio 2010 and scroll wheel

Post by clm_de »

Great!

Yes, I'd like to test the beta version. A huge thanks for your efforts to make Windows less of a pain in .. a dark place.

Thanks,
Claudius
User avatar
phil
Site Admin
Posts: 7670
Joined: Sun Apr 06, 2003 11:12 pm

Re: Visual Studio 2010 and scroll wheel

Post by phil »

There is a sticky thread about it... the link is in there.
viewtopic.php?f=6&t=626
--[ Phil ]--
--[ Administrator & XMBC Author ]--
Logitech G9/G604/M720/MX518, Microsoft Intellimouse, Trust 16341 BT Mouse
Windows 10 x64, AMD Ryzen 5900x, MSI x570 Tomahawk, 32GB DDR4,
nVidia RTX 2070s, Evo 970 1Tb NVME, 2x2TB WD Black (RAID1)
Post Reply