13

I know there are a couple other questions as to pinning the Favorites folder but I wanted to do something where I have a folder like OneDrive or Drop box (where it acts almost like another drive).

Cannot quite find what I'm looking for. I realize it's a special folder, I realize it's likely a shell extension (using SharpShell at the moment). I've gotten a context menu to work with it, just cannot find this information. I'm wondering if I'm asking it wrong.

Any help is always appreciated!

UPDATE: Looks like what I'm looking for is a Shell Extension and specifically an implementation of a ShellFolder. Trying to do this with SharpShell or EZNamespaces but was trying to find some hack around it. No dice. :)

Thanks for all the comments!

Chris
  • 731
  • 1
  • 7
  • 18
  • 2
    What do you mean with "special". If you look at DropBox, BTSync and GDrive they are actually normal folders and those applications are probably using something similar to a `FileSystemWatcher` in order to monitor changes and sync them to DropBox, BTSync and GDrive. OneDrive however is a different beast, when accessing that folder it does interact with the cloud directly. Which of these two behaviors are you looking for exactly? The behavior of DropBox, GDrive and BTSync are easy to implement. – TimothyP Aug 15 '14 at 14:58
  • 1
    Not so much the synchronization aspect, just how to create an icon in the navigation pane but not under either Links or Favorites (for instance dropbox and OneDrive you have an icon at the first level (not under favorites). – Chris Aug 15 '14 at 17:05
  • These cloud storage utilities go far beyond just the shell extension and FSW. They inject a DLL into every process that patches the winapi functions that manipulate files. You cannot reasonably do this yourself without a venture capital firm keeping you alive for the next couple of years. – Hans Passant Aug 15 '14 at 17:28
  • I get that... I'm just trying to figure out how the icon is created. I used DropBox and OneDrive as *examples* of the type of folder I wanted to create. – Chris Aug 15 '14 at 17:55
  • Can you show us a bitmap where you want to put it? Most of these are just links. It also depends heavily on the Windows versions you want to support. Also, C# (.NET) is not supported for many shell extension types. – Simon Mourier Aug 16 '14 at 07:20
  • Simon, great question. http://bit.ly/YkWCDj Only looking to support Windows 7/8.1 – Chris Aug 17 '14 at 15:43
  • @Chris, Did you solved your problem? I also facing this problem. Can you help me? – Md. Abdul Alim Mar 20 '18 at 04:07

1 Answers1

5

Looks like what I'm looking for is a Shell Extension and specifically an implementation of a ShellFolder. Trying to do this with SharpShell or EZNamespaces but was trying to find some hack around it. No dice. :)

More Info

http://msdn.microsoft.com/en-us/library/cc144095%28v=vs.85%29.aspx

http://msdn.microsoft.com/en-us/magazine/cc188741.aspx

https://github.com/dwmkerr/sharpshell

http://www.ssware.com/ezshell/ezshell.htm

Laim
  • 78
  • 1
  • 8
Chris
  • 731
  • 1
  • 7
  • 18
  • 2
    4 years have passed since. This commercial product: https://www.shellboost.com supports both "File-on-Demand" and the recent "Project File System" (ProjFS) API used by Microsoft to connect to mega huge github repos (the visible part of the iceberg is this https://gvfs.io/). Disclaimer: I work for the company who sells it. – Simon Mourier Nov 22 '18 at 08:18
  • https://sharpshell.codeplex.com/ link is not working. – Shyam sundar shah Mar 15 '23 at 04:38