Holy cow, I wrote a book!
A corporate customer wanted to know
where the Installed Updates control panel
gets the Installed On information from,
because they found that the values were always set to the current date
regardless of when the update was actually installed.
The algorithm goes roughly like this:
First, ask MSI what date the update was installed
MsiGetPatchInfoEx and asking
If that doesn't work, then go to the registry key under
and look for a value called (surprise)
(Note that 32-bit updates on 64-bit machines will be redirected into
a Wow6432Node key.)
If that still doesn't work,
then it's time to guess:
Windows XP uses the
last-modified date of the directory that contains the uninstaller.
Windows Vista and higher use the
last-modified date of the
(Again, possibly with a
Wow6432Node stuck in there.)
Interestingly, the customer didn't phrase the problem like that.
The customer said,
"The first time a user logs on each day, the install date changes
to the current date.
Subsequent logons the same day do not change the date.
But the first logon the next day changes the date again.
What's so special about the first logon of each day?"
What's so special about the first logon of each day is that
it's a new day!
I suspect that the the date is updated on every logon.
It's just that they don't notice the change because the date is the same.