 |
|
 |
Hi
I am trying to add drag and drop handler to this project. But somehow I cant get it working. The LVN_BEGINDRAG message handler is not getting called. I have added
NOTIFY_CODE_HANDLER(LVN_BEGINDRAG, OnBeginDrag)
to the CShellListView class but the handler OnBeginDrag does not get called. I am totally stuck. Any pointers in this regard is welcome.
Regards
Harry
|
|
|
|
 |
|
 |
Try to ask this question in the WTL forum.
|
|
|
|
 |
|
 |
Hi
I want to change the explorer toolbar and explorer's menu whenever the folder on the desktop is clicked.
That folder is already created by os just i want to control the explorer's view for that folder.
Thank you
|
|
|
|
 |
|
 |
You have written a nice article , but I wonder is there any way through which I can add the buttons to Windows Explorer
|
|
|
|
 |
|
 |
I do not know how to add buttons to the standard ones, it does not mean that it's not possible, I just did not think of it.
My code replaces the standard toolbar with my own. So if you find a way it could mean a nice article.
Good luck.
|
|
|
|
 |
|
 |
You have to implement a shell namespace extension.
There is a variety of shell extensions: shortcut menu, data, drop, icon, icon overlay, property sheet, column, copy hook, drag-and-drop, search, disk cleanup - all these are 'handlers'.
Almost all these are simple COM objects, implementing just IClassFactory and specific interfaces for the extension type - for example, a column handler will need to implement (minimally) IColumnProvider, an icon handler will implement IExtractIcon and IPersistFile, a context menu handler will implement IContextMenu and so on.
However, for implementing toolbar buttons (and not only) you need to implement a IShellBrowser, so the prime choice is the shell namespace.
The boundary betwenn various kind of extensions is flexible, so is perfectly possible to implement a mixed kind of extension - let's say you are integrating your archiver into Explorer and implement in the same dll:
- context menu functionality for right click on your archive file type;
- data handler extension for clipboard format operations;
- icon handler;
- drag-and-drop;
- the namespace for browse and handle directly in Explorer the content of your archive file, so opening your archive will be just another folder in the shell.
There is also another way to add a toolbar button - but will work on relatively newer platforms, meaning that a Windows NT 4.0 SP1 with IE 3.0 won't support it: Browser Helper Objects (BHO). Think on integration of FlashGet, MSN Messenger, AOL Instant Messenger etc. in Internet Explorer's toolbar - these are all BHOs.
If you choose this way, you have to decide where it will be supported (in Windows Explorer, Internet Explorer, or both), implement the required functionality and register you COM object. (I didn't wrote any BHO's for use in Windows Explorer, just for Internet Explorer - but I suppose is perfectly possible).
The ugliest choice - but the best concerning integration, extensibility and power - is the shell namespace. There are quite a number of such articles on various sites (unfortunately, a good part of them are offline or does not exists anymore now), but MSDN contains a good number of samples of each kind (look also in older MSDN, 1999 or so!). Once started, it shouldn't be that bad .
Happy debugging the namespace !
|
|
|
|
 |
|
 |
I am trying to navigate into a shellServer folder. If I set the directory in the OFN struct to point into the folder I get the view displayed. However if I start at the same level as the ShellServer folder and I double click on the folder I leave the open dialog.
Can anyone help?
Thanks, Guy
|
|
|
|
 |
|
|
 |
|
 |
I did not test it on WinXP, but I will.
|
|
|
|
 |
|
 |
cool; BTW is there anyway to get the toolbar buttons to show up globally and not just for the shellname space?
|
|
|
|
 |
|
 |
I do not think so, at least not for NT, you have to write a namespace extension.
It could be possible in Win2000 and XP, because of the integration of Explorer and IE. I seem to recall that I saw an article in MSDN on how to add a toolbar button to IE. I do know that a menu item can be added to the context menu in IE.
|
|
|
|
 |
|
 |
I think your example might be more helpful if you'll add button and menu handling.
|
|
|
|
 |
|
 |
But I did, I just do not do anything useful there.
Since it's a sample I display message boxes when an user clickes
a button or selects a menu item.
|
|
|
|
 |
|
 |
Thanks for this example!
But I can't find the file atlapp.h.
Juergen
|
|
|
|
 |
|
 |
Hi, Juergen.
atlapp.h is a part of WTL.
When you install WTL you'll get it.
On my machine it's located in
C:\Program Files\Microsoft Platform SDK\Src\WTL\Include\AtlApp.h
Thanks for your review.
Igor
|
|
|
|
 |
|
 |
Hi, Juergen.
atlapp.h is a part of WTL.
When you install WTL you'll get it.
On my machine it's located in
C:\Program Files\Microsoft Platform SDK\Src\WTL\Include\AtlApp.h
Thanks for your review.
Igor
|
|
|
|
 |
|
 |
Thank you for your reply. Now its working fine.
It's really a great sample.
I missed the WTL in the title (and article) because
the lower "l" looks like an "I".
Juergen
|
|
|
|
 |