C
Chris C
Hi all,
I recently messed with the Windows XP start menu by adding cascading
shortcuts (such as my computer, network places, etc.) in my
never-ending quest to improve efficiency. In meddling this way I had
multiple explorer freezes (100% CPU usage) where I had to end the
process and manually re-run explorer.exe to get my desktop back. I
was not even doing anything special like searching, just opening
folders and making shortcuts (but not regular shortcuts; read below).
From what I can tell, there are two types of file shortcuts in XP, the
standard "shortcut" file type (with a forcibly hidden .lnk extension)
and a new(???) "folder" file type. To see what I mean right click on
the start button and select open. Then, right-button-drag "My
Computer" from your desktop to the start menu folder that just opened,
drop it, and select "create shortcuts here". This creates a file of
type "Folder" which allows cascading when viewed from the start menu.
This is NOT the same as a "file folder" type (a.k.a directory). The
funny thing is, you can move these guys around like regular ".lnk"
shortcuts (i.e. not restricted to the start menu). And wherever they
appear they cascade automatically (when possible). I am guessing this
folder type is an extension of functionality akin to the previous
windows tricks of getting special folders (such as control panel, my
computer, etc.) to appear by creating new folders named "<whatever
name you want>.<CLSID>". The problem with these shortcuts is that in
cascading, you can easily enter into an infinite loop, as I will
illustrate with this example (for those that don't understand what I'm
talking about):
Using the new shortcut you just created follow these steps (note:
these are the paths on my computer yours may vary slightly):
start->my computer->c:\->documents and settings->{your user
name}->start menu->programs-> my computer->c:\->documents and
settings->{your user name}->start menu->programs->
get the drift?
I have concluded that the team that implemented explorer's refresh /
search routines did not adequately test this new functionality and its
implications (tsk tsk Microsoft). My guess is as explorer tries to
refresh one of these new shortcuts it keeps recursing these new link
types (as opposed to stopping dead with the old .lnk shortcuts) and
consequently hangs. Unfortunately I do not have time to figure out a
reproducible sequence of events that hang explorer since I am a
student and time is tight. This is why I am posting this here, since I
am sure someone will pick this up and run with it.
Hope I haven't wasted your time,
Chris
PS Before anyone posts anything, this is NOT the same as explorer
hanging due to CORRUPT AVI files!!!
I recently messed with the Windows XP start menu by adding cascading
shortcuts (such as my computer, network places, etc.) in my
never-ending quest to improve efficiency. In meddling this way I had
multiple explorer freezes (100% CPU usage) where I had to end the
process and manually re-run explorer.exe to get my desktop back. I
was not even doing anything special like searching, just opening
folders and making shortcuts (but not regular shortcuts; read below).
From what I can tell, there are two types of file shortcuts in XP, the
standard "shortcut" file type (with a forcibly hidden .lnk extension)
and a new(???) "folder" file type. To see what I mean right click on
the start button and select open. Then, right-button-drag "My
Computer" from your desktop to the start menu folder that just opened,
drop it, and select "create shortcuts here". This creates a file of
type "Folder" which allows cascading when viewed from the start menu.
This is NOT the same as a "file folder" type (a.k.a directory). The
funny thing is, you can move these guys around like regular ".lnk"
shortcuts (i.e. not restricted to the start menu). And wherever they
appear they cascade automatically (when possible). I am guessing this
folder type is an extension of functionality akin to the previous
windows tricks of getting special folders (such as control panel, my
computer, etc.) to appear by creating new folders named "<whatever
name you want>.<CLSID>". The problem with these shortcuts is that in
cascading, you can easily enter into an infinite loop, as I will
illustrate with this example (for those that don't understand what I'm
talking about):
Using the new shortcut you just created follow these steps (note:
these are the paths on my computer yours may vary slightly):
start->my computer->c:\->documents and settings->{your user
name}->start menu->programs-> my computer->c:\->documents and
settings->{your user name}->start menu->programs->
get the drift?
I have concluded that the team that implemented explorer's refresh /
search routines did not adequately test this new functionality and its
implications (tsk tsk Microsoft). My guess is as explorer tries to
refresh one of these new shortcuts it keeps recursing these new link
types (as opposed to stopping dead with the old .lnk shortcuts) and
consequently hangs. Unfortunately I do not have time to figure out a
reproducible sequence of events that hang explorer since I am a
student and time is tight. This is why I am posting this here, since I
am sure someone will pick this up and run with it.
Hope I haven't wasted your time,
Chris
PS Before anyone posts anything, this is NOT the same as explorer
hanging due to CORRUPT AVI files!!!