Board index » cppbuilder » shell namespace extension - multiple 'virtual' folders

shell namespace extension - multiple 'virtual' folders

I am trying to decide if it is feasible to write an explorer shell namespace
extension with BCB 3 for the following situation:  I (and many of my
co-workers) frequently deal with a type of file called a 'bookshelf'
(*.bks).  These files basically look like mutant .ini files containing a
list of books (online manuals).  The third party software normally used to
browse them is awkward and woefully out of date;  it would be much more
natural if they just appeared as folders in explorer which opened to display
a list of 'book' objects.

Would it make sense to write a namespace extension to do this?  After
looking through the SDK doc on namespace extensions, it looks like it was
intended to handle cases where you want to implement one 'virtual' folder at
a fixed location in the file hierarchy.   These bookshelves can be anywhere,
and there are hundreds of them spread throughout the network (mostly on
cd-roms).  The only app I know of is ZipMagic, which makes zip files look
like folders in explorer

Also, I would appreciate any pointers anyone has on using BCB 3 to do this.
In particular, can you debug/trace the dll's as explorer is running?  I've
thought about using VC++ for this, but really do NOT want to re-install that
behemoth for this.

 

Re:shell namespace extension - multiple 'virtual' folders


Quote
John Moore <jkmo...@platinum.com> wrote in message

news:7p718p$n1k9@forums.borland.com...

Quote
> I am trying to decide if it is feasible to write an explorer shell
namespace
> extension with BCB 3 for the following situation:  I (and many of my
> co-workers) frequently deal with a type of file called a 'bookshelf'
> (*.bks).  These files basically look like mutant .ini files containing a
> list of books (online manuals).  The third party software normally used to
> browse them is awkward and woefully out of date;  it would be much more
> natural if they just appeared as folders in explorer which opened to
display
> a list of 'book' objects.

> Would it make sense to write a namespace extension to do this?  After
> looking through the SDK doc on namespace extensions, it looks like it was
> intended to handle cases where you want to implement one 'virtual' folder
at
> a fixed location in the file hierarchy.   These bookshelves can be
anywhere,
> and there are hundreds of them spread throughout the network (mostly on
> cd-roms).  The only app I know of is ZipMagic, which makes zip files look
> like folders in explorer

> Also, I would appreciate any pointers anyone has on using BCB 3 to do
this.
> In particular, can you debug/trace the dll's as explorer is running?  I've
> thought about using VC++ for this, but really do NOT want to re-install
that
> behemoth for this.

Yes to the debugging of shell extensions as explorer is running in BCB.  The
same procedure is to be followed, regardless of the de{*word*81} used, for
debugging shell programs.
Would recommend you upgrading to BCB4 prior to tackling tasks, as BCB4
upgrades the COM capabilities/IDE from BCB3.
Watch out for the include file <shlobj.h>.  Make sure that it's the Borland
version and not the MS version that you've included.  That particular hiccup
costed me a week.

Good luck !
UTan.

Re:shell namespace extension - multiple 'virtual' folders


John, this should be possible to do. I don't really know how to make a
randomly located file show up in your extention ( as opposed to a
virtual folder ). I think this is mentioned in MSDN somewhere. Just
search for "name space" and one of the results will be an article (
talking about .cab viewer ) that will show registry entries to
accomplish this.

HTH,
Alex

Quote
John Moore wrote:

[snip]

--
HotSend - portable documents technology
http://www.hotsend.com/
eFax - get your faxes via email - Free !
http://www.efax.com

Other Threads