More on using a Named Mutex in Vista

This is a follow-up to the Kernel Object Namespace and Vista post. Those previous findings were made using an administrative user in Vista. When I tried creating a 'Session\AppName' Mutex as a non-administrative user though, the application hung!

Just to be clear, here is how (simplified) I'm creating the Mutex:

The hang occurs when the Mutex is created. By hang I mean that the process just spins its wheels sucking 50-60% of the CPU and will continue until it's killed. Based on WinDbg analysis it's either stuck in the underlaying Win32 CreateMutex() call or CreateMutex() is being called repeatedly. It's probably the later.

When 'Local\' or 'Global\' are used, the Mutex is created fine! As noted before, 'Local\' doesn't work for other reasons so I'm stuck using the 'Global\' namespace. Go figure?

2 Responses to “More on using a Named Mutex in Vista”

  1. […] More on using a Named Mutex in Vista This is follow-up to the Kernel Object Namespace and Vista post. Those previous findings were made using an administrative user in Vista. When I tried creating a ?SessionAppName? Mutex as a non-administrative user though, … […]

Leave a Reply