Post by Paul RandallI suppose one solution would be to attach the 'Open Command Window
Here' item to the context menus of everything that can be displayed in
a folder window, but I don't know what the list of 'everything'
includes, or the registry keys that would have to be modified to
include all the possible things. Being able to right click in the
white space of the background of an open explorer window and get a
'Open Command Window Here' context menu item would solve the whole
problem even for empty folders, and not clutter the context menu lists
for all the things that can be displayed in a folder window.
Maybe you could track down the key under
HKCR\.zip and add it to HKCR\*
In general,
an item can be added to any file extension menu
(and folders), by adding the necessary settings
under
HKCR\.ext\shell
OR
HKCR\classname\shell (where classsname is the file type.)
That's if the job can be done with just Registry
settings. (Ex.: Open with Notepad)
Context menu handlers are often used by
programs like ZIP programs and AV, in order to
add an item under the first menu divider on
the context menu. Those are created in the
Registry under
HKCR\.ext\shellex
OR
HKCR\classname\shell
They run a component when the menu item is
clicked.
If you don't find what you need under HKCR\.zip
look under the file type key (classname), like HKCR\zipfile.
The name of that key is the default value under
HKCR\.zip
Clicking in the folder window itself is really a
click on the system ListView window that's used
to display folder content. You'd have to hook that
somehow to get notification of the click. I'm not
sure that can even be done in a shell extension.
The ListView can be accessed via Windows messages
as a normal ListView, since the ListView's handle
is available, but it's running in a separate process,
So I imagine a system-wide hook would be needed
to catch the event messages like click or mouse-up.
The old folder.htt file has an embedded FileList
object that was actually a wrapper control
(a ShellFolderView) around the ListView. But even
that only provided a subset of functions for use
by Explorer, like the SelectionChanged event.
I wrote an Explorer Bar recently that might be
usable if you can script the operation. It's probably
not what you really want, but it does return the
customizing abilities of folder.htt to WinXP folder
windows. I wrote it with the thought that I might
have to use Windows Xtra Problems one of these
days and one of the biggest problems, from my
personal point of view, is that I'd have to give up my
numerous Win9x folder window customizations
(provided via folder.htt) for a "common tasks bar" that's
all but useless.
So I wrote an Explorer Bar that provides basic file
info. - thumbnails, file size, etc. But it also has "tabs".
The second tab is for JPG info. The 3rd tab show
an ADS file view of the folder. The 4th tab is a custom
webpage, which can be coded to do whatever you
want, thereby getting back all the options that Win9x/2000
for adding functionality in the HTML of a folder view. I use
it to bring my custom Win98 functions into WinXP folder
windows. It's all self- explanatory to someone familiar with
scripting.
www.jsware.net/jsware/jsfv.php3