<quote>
In order to get the "Last Used" and "Frequency" values, Add/Remove Programs
needs to know the name of the EXE so it can ask the Start menu "Hey, how
often did the user run this program, and when was the last time it
happened?"
Notice that there are no clues in the registration above as to the identity
of this EXE file.
So Add/Remove Programs starts guessing. It goes through all the programs on
your Start menu and compares their names with the display name of the
uninstallable item. It looks for Start menu items which share at least two
words with the words in the DisplayName.
For example, if there were a Start menu item called "Pretty Decent Windows
Program", this would count as a two-word match ("Windows" and "Program").
It then takes the one with the most matches and decides, "Okay, I guess this
is it." Suppose for the sake of illustration that the best match is indeed
"Pretty Decent Windows Program.lnk", which is a shortcut to "C:\Program
Files\LitWare\Decent Program\Decent.exe". Add/Remove Programs would decide
that "Awesome Program for Windows" should get the icon for "Pretty Decent
Windows Program.lnk", that the frequency of use and most-recently-used
information for "C:\Program Files\LitWare\Decent Program\Decent.exe" will be
displayed for "Awesome Program for Windows".
But wait, there's more. There's also the program size. Add/Remove Programs
looks in your "Program Files" directory for directories whose names share at
least two words in common with the DisplayName. The best match is assumed to
be the directory that the program files are installed into. The sizes are
added together and reported as the size of "Awesome Program for Windows".
</quote>