Access SDExplorer (System Folder) from my C# app
I am trying out Windows Live SkyDrive, and I installed SDExplorer (http://www.cloudstorageexplorer.com/)
It works by adding my SkyDrive folde开发者_StackOverflow社区r to Windows Explorer, but it does not get a drive name or anything, so how can I access that drive/folder from my C# application?
When I go into the folder and look at the address bar it says "Computer\SDExplorer".
Directory.GetDirectories(@"\Computer\SDExplorer") does not work, because it translates to "C:\Computer\SDExplorer".
I would like to be able to create a small application that can create folders and upload files to my SkyDrive account.
Anybody know how these special folder/drives work? - I noticed MozyHome appears in the same way in my Windows Explorer.
Some background info: http://www.technospot.net/blogs/how-to-create-a-system-folder-in-my-computer/
The SDExplorer folder is a system folder. You can find it in the registry at the following location
HKEY_CLASSES_ROOT\CLSID{0016CE0E-728C-4FC9-98E5-D0B35B384597}
Instead of using shell32.dll it uses C:\Program Files\SDExplorer\SDShellNSE.dll,0 with the parameter a0800018 instead of a normal path.
If my assumptions are correct, the folder location is hidden somewhere in that DLL file. I had a look with a hex editor but could not find anything useful.
Thanks a lot for your replies. Because I am interested in how this works I will try to dig a little deeper. Thanks for pointing me in the right direction.
I have managed to build my small application (made it into a service), which can create folders and upload files to SkyDrive. I did this without SDExplorer, and instead I used the SkyDrive .NET API someone build here: http://skydriveapiclient.codeplex.com/
Greetings Søren
精彩评论