Windows 7 + Logitech Wireless + CoH = Fail


Curveball

 

Posted

The problem: when I load CoH in Windows 7, none of Logitech Wireless Mice will recognise any mouse button beyond buttons 1 and 2.

Extra information:

Windows 7 - I'm pretty sure this is exclusively a Windows 7 problem. It was never a problem when I was using XP, and when I play on my Linux partition (using Wine, emulating XP) all my extra mouse buttons are recognized.

Logitech Wireless Mouse - I'm pretty sure the problem is specific to wireless mice. I have one Logitech USB wired mouse that recognises all buttons and all button assignments. However, my MX Revolution, my M705, and my Performance MX all suffer from this problem.

City of Heroes - this isn't a general gaming problem. My mouse buttons are recognised in a number of different games, including (but not limited to) Fallout 3, Dragon Age: Origins, Neverwinter Nights 2, and Civilization IV.

Specifics of the problem:

OK, so let's take, for example, the Performance MX. I have it configured in the following manner:

Button 1 - Mouse Button 1
Button 2 - Mouse Button 2
Button 3 (Middle button) - Mouse Button 3 (Middle button)
Button 4 (1st thumb button) - Left Ctrl
Button 5 (2nd thumb button) - Left Shift
Button 6 (3rd thumb button, under 1st and 2nd) - Left Shift (again)
Button 7 (middle button tilt left) - unassigned
Button 8 (middle button tilt right) - unassigned
Button 9 (base of mouse, thumb button) - Left Alt

In CoH I rely heavily on Button 4 and 5 in order to access powers in the second and third power tray. This works fine in Linux/wine, but in CoH under Windows 7, it only recognizes Button 1 and 2 -- it doesn't even recognise the middle button, which I have bound to "target_nearest."

However, in Windows 7 I can confirm the buttons work. If I press Mouse button 5 and type in notepad, I get capital letters (i.e., it is recognising the shift command). I can press mouse button 9 and tab and get the alt+tab effect. Setpoint is assigning the buttons correctly in Windows 7.

It also assigns the buttons correctly in other games.

But it doesn't find or recognize any buttons beyond the first two in CoH.

Anyone else have this problem? Anyone else fix this problem? Anyone have any ideas?

Playing in Linux is fine, but a bit limited graphics-wise...


Scrapper Jack (SJ/WP Brute), Sky Commando (WP/SJ Tanker), Curveball (Rad/DP Defender), and a bunch more.

 

Posted

I have Win7, and a Logitech MX620, and have no issues, beyond the fact that I can't get CoH to recognize anything beyond BUTTON5. I had the same issue with WinXP, however, with the same mouse.

I suggest checking this thread out, and seeing if anything there helps. If not, let us know.




[ ProTip: The banner is a link to art refs!! | The Khellection | The HBAS Repository | Brute Guides (4/16/10) | How To Post An Image - A Quick Guide ]
Biggest Troll on the forums? I'll give you a hint:

 

Posted

Well, disabling UAE didn't do a darn thing. However, uninstalling my Setpoint drivers (6.15, I think) and re-installing the 4.80 drivers appears to have done the trick. Which makes absolutely no sense whatsoever. But that's OK!

Now if I can convince Windows 7 to stop being "helpful" and prevent 4.80 from being upgraded, I'll be in good shape.


Scrapper Jack (SJ/WP Brute), Sky Commando (WP/SJ Tanker), Curveball (Rad/DP Defender), and a bunch more.

 

Posted

I take it back.

It worked perfectly until I rebooted. Now it doesn't work any more.

Sigh...


Scrapper Jack (SJ/WP Brute), Sky Commando (WP/SJ Tanker), Curveball (Rad/DP Defender), and a bunch more.

 

Posted

Always blaming Windows.

I use SetPoint 4.80 (with Uberoptions) and City of Heroes together perfectly. Windows has never attempted to upgrade me. However, I need to run CoH as a non-admin user in order to get it to work.

The security model in Windows Vista and 7 doesn't allow a non-admin program to read into a program running with admin rights. This is how things should be. Unfortunately, City of Heroes will run as an administrator, due to the updater asking for admin rights. This prevents Setpoint hotkeys from working.

If you run cityofheroes.exe directly, with the switch -project CoH in the shortcut, you can bypass the updater and run City of Heroes as a regular user, allowing Setpoint to recognise the game and apply your keybinds. However, you will need to manually run the CoH updater whenever there is a patch.

If this doesn't work, we can try other options.


Necrobond - 50 BS/Inv Scrapper made in I1
Rickar - 50 Bots/FF Mastermind
Anti-Muon - 42 Warshade
Ivory Sicarius - 45 Crab Spider

Aber ja, nat�rlich Hans nass ist, er steht unter einem Wasserfall.

 

Posted

Necrotron, your suggestion worked perfectly. I can now use all my mouse buttons with a minimum of inconvenience. Sure, I have to fire up the loader to check for updates, THEN close it and fire up the direct executable, but I'm willing to live with that considering the alternative.

Though I'd really prefer Logitech fix the Setpoint drivers.

At this point, though, I'm wondering why the drivers work when they first install, before the reboot. This is my hypothesis:

1. When you run the Setpoint drivers, UAE asks you to confirm the install.

2. When you confirm the install, UAE installs it with Admin rights.

3. The drivers take effect as soon as the install completes, which means they effectively "launch" from the install session, so they are running with Admin rights during the install, so they can affect the game which is running as admin.


If my hypothesis is true, then in order for the Setpoint drivers to work they'd have to run with admin privileges. My question, though, is why DOESN'T a device driver run with admin privileges to begin with?


Scrapper Jack (SJ/WP Brute), Sky Commando (WP/SJ Tanker), Curveball (Rad/DP Defender), and a bunch more.

 

Posted

Quote:
Originally Posted by Curveball View Post


If my hypothesis is true, then in order for the Setpoint drivers to work they'd have to run with admin privileges. My question, though, is why DOESN'T a device driver run with admin privileges to begin with?
Security hole. Microsoft has enough of their own so they try to limit third-party products access.


If the game spit out 20 dollar bills people would complain that they weren't sequentially numbered. If they were sequentially numbered people would complain that they weren't random enough.

Black Pebble is my new hero.

 

Posted

Quote:
Originally Posted by Curveball View Post
Sure, I have to fire up the loader to check for updates, THEN close it and fire up the direct executable, but I'm willing to live with that considering the alternative.
If you make yourself the owner of the CoH installation folder, then use Microsoft's Application Compatibility Toolkit (on cohupdater.exe), you won't have to deal with UAC for the updater, and can run CoX as a standard user.

Quote:
If my hypothesis is true, then in order for the Setpoint drivers to work they'd have to run with admin privileges. My question, though, is why DOESN'T a device driver run with admin privileges to begin with?
The device driver is running in the kernel (so rights higher than admin). The helper utility is running with your user rights, as it should. The problem, though, is that CoH shouldn't be running as an Administrator, it's just that this is still a game designed in the world of XP, where everyone was an Administrator with unlimited system access at all times.


Quote:
Originally Posted by ShadowNate
;_; ?!?! What the heck is wrong with you, my god, I have never been so confused in my life!

 

Posted

Well, it looks like the Microsoft Application Compatibility Toolkit option worked!

Thanks for that tip, Kitsune...


Scrapper Jack (SJ/WP Brute), Sky Commando (WP/SJ Tanker), Curveball (Rad/DP Defender), and a bunch more.

 

Posted

Quote:
Originally Posted by Kitsune Knight View Post
The device driver is running in the kernel (so rights higher than admin). The helper utility is running with your user rights, as it should. The problem, though, is that CoH shouldn't be running as an Administrator, it's just that this is still a game designed in the world of XP, where everyone was an Administrator with unlimited system access at all times.
I couldn't have put it better myself.

One time, I bodged Setpoint so that it ran with admin rights, but this was a real **** to deal with. Simply changing the properties of the executable to require admin rights led to a UAC prompt on every startup. Instead, I devised a service that would run at startup, kicking off Setpoint with admin rights without any prompt. But for some reason, Setpoint didn't like being run in this way, and stability was affected. Opening up the Setpoint panel also took many minutes.

Quote:
Originally Posted by Kitsune Knight View Post
If you make yourself the owner of the CoH installation folder, then use Microsoft's Application Compatibility Toolkit (on cohupdater.exe), you won't have to deal with UAC for the updater, and can run CoX as a standard user.
Now THAT looks interesting... If that does what I think it does, I may have to marry you.


Necrobond - 50 BS/Inv Scrapper made in I1
Rickar - 50 Bots/FF Mastermind
Anti-Muon - 42 Warshade
Ivory Sicarius - 45 Crab Spider

Aber ja, nat�rlich Hans nass ist, er steht unter einem Wasserfall.

 

Posted

Quote:
Originally Posted by Necrotron View Post
Instead, I devised a service that would run at startup, kicking off Setpoint with admin rights without any prompt. But for some reason, Setpoint didn't like being run in this way, and stability was affected. Opening up the Setpoint panel also took many minutes.
By default, Services are unable to interact with the Desktop, both to protect the user, and to protect the server from injection attacks... which most developers are blissfully unaware of. If interaction was enabled, I could still see problems from a program not being aware of how to deal with being started before the user is logged in.

The best method I've seen (short of architecturing the program to handle that properly) is to use the Task Schedule to start the program upon login, elevated. That should work around most all the problems of running it as a service, while avoiding the repetitive UAC prompt at login.


Quote:
Originally Posted by ShadowNate
;_; ?!?! What the heck is wrong with you, my god, I have never been so confused in my life!

 

Posted

Quote:
Originally Posted by Kitsune Knight View Post
By default, Services are unable to interact with the Desktop, both to protect the user, and to protect the server from injection attacks... which most developers are blissfully unaware of. If interaction was enabled, I could still see problems from a program not being aware of how to deal with being started before the user is logged in.

The best method I've seen (short of architecturing the program to handle that properly) is to use the Task Schedule to start the program upon login, elevated. That should work around most all the problems of running it as a service, while avoiding the repetitive UAC prompt at login.
My bad; I meant the task scheduler. I haven't used it in a year, and my terminology is rusty.


Necrobond - 50 BS/Inv Scrapper made in I1
Rickar - 50 Bots/FF Mastermind
Anti-Muon - 42 Warshade
Ivory Sicarius - 45 Crab Spider

Aber ja, nat�rlich Hans nass ist, er steht unter einem Wasserfall.