Windows Start Menu

How come the tiny icons of programs listed within the All Programs (et al) sub-menus take such a long time to load? I mean, those little things are tiny 25 by 25 pixel tiny pics, and you can literally see them loading zipping down the list, might take a fraction of a second or so, but it seems too much. I don’t want to start comparing to other non-Windows OS menu picture loading times, but this happens with XP, Vista, and 7. Is there something that can be done? Is is something related to winrot? :confused:

I, too would like an answer to this. Also, when Windows boots, I see the desktop, including all icons and wallpaper for a second or two, then it disappears and then the wallpaper comes up blank and the icons pop up one by one. It takes them maybe ten seconds to load again. Pretty shabby. And yeah, Mac doesn’t do this crap. Also, click on the volume control and you can count to five before it appears. Same goes for a lot of context menus. Annoying.

Windows is reloading all the icons from their separate locations on disk, instead of from the disk cache. Your harddrive is the limiting factor. Why it doesn’t just keep the old icons until and unless they need replacing, I don’t know.

I’m not sure how Mac OS X handles it. But getting the icons from the files is something you have to do.

When Windows is loading application icons, if they aren’t in the cache already, or if the cache has been flushed, it has to read through the entire .exe file to find the application icon*. It isn’t just reading a 16x16 or 32x32 pixel file.

    • While some applications might still use *.ico files, most combine the icons into a program resource, which is compiled usually into the base *.exe file, but might alternatively be compiled into a *.dll library file. This lets the app deal with things like different desktop resolutions, languages, even features.

Khendrask - Okay, so let’s rephrase the OP to be something like: Why did they stop using the *.ico files?

Windows itself has been using DLL files for its own programs since at least Windows 3.1, so it’s not a new development. Windows kept most of the icons it used for its own stuff in, IIRC, fileman.dll, progman.dll, and moricons.dll. Some were also in pifmgr.dll, I think.

There is a built-in delay which accounts for some of the wait. It may help somewhat to reduce the value in the registry and then reboot.

The linked KB article is written for NT, but it works in XP and should in Vista and 7 as well.

Also, which I meant to include in my original reply but forgot to, it’s worth noting that Windows has to look 2 places to construct the Start menu: it has to look at the individual user’s “Start Menu” folder and at the “Start Menu” folder which all users access (where this resides varies by Windows version).

But if I were to write a little program that looked in fifteen places to build up a tree of programs, and then found all of the little pictures for them, it would execute in the barest fraction of a second.

Windows is doing more than just looking things up. It seems to me that there is some degree of “knocking on the door” of certain apps involved.

I had some weird problem with my machine some months back where the Windows installer would pop up occasionally and try to install something that it couldn’t find the MSI for. I was quite surprised to find that when I hovered over the wrong node of the Start Menu tree (an app that never installed correctly), that annoying installer window would come up.

I can’t see why Windows would try to configure/install anything for a simple act such as exposing a node in the start menu, but that’s what was happening. Clearly Windows is doing something more intrusive than just showing pictures.

And before that, it is reading the Registry to find out for each one where it has to go on the hard disk to find the icon.

(That’s why the massive size of the registry can be a problem, and why Registry Cleaner utilities exist.)

Are you guys using the default Start Menu/Desktop or the Classics? One of the first things I do when doing a windows build is switch my start menu and desktop to windows classic. Shaves a good chunk off my boot time, and all you lose is some graphic frippery which is barely noticeable anyway.

Some really nice windows tweaking guides can be found at http://www.tweakhound.com/
I have XP Pro and Home on 2 different comps, and my boot time is around 15-20 seconds thanks to his XP tweaking guide. I don’t do the registry editing stuff or mess with page files, but most everything else is really useful and will speed up your comp and make it run better.

Windows 7 doesn’t allow users to access the Classic start menu but it can be put back through a third-party app:

http://classicshell.sourceforge.net/