This is the fifth in a series of notes about UAC in MSI. Per the earlier caveat, these are just my notes and not an official position from the Windows Installer team. The previous entries, I
So after I figured out per-user changed definitions, the other elements of per-user started to break down as being fragile.
Though we've tried to give guidance, we continue hear from customers that the packages they are receiving are not following these guidelines.
If you were watching closely during the run-up to the .NET framework in the early 2000's, you may have noticed the service side of .NET, called Hailstorm, came and went. Were you watching really closely, you may have noticed a state initiative (referred to as applications settings) whoosh by with the rest of the abandon .NET services. In that mix of technology, there was a state management service that got swept away.
One of the outstanding issues from the Windows Installer effort was a complementary service for doing user specific things. Generically the user specific things are called state and some of the talent that invented Windows Installer were enlisted to work on this effort as well. Due to some dependencies on .NET services, the effort to build a complementary service disappeared leaving the problem unsolved.
If you've stayed with this post to here, you're probably wondering: '...and how is all this connected?' If this is you, this response is exactly my intent. That this jagged edge exists is not intentional but it is real.