Dokan

user mode file system for windows    >>Japanese version

Open Source Dokan library 0.3.2 released

May 26th, 2008 in Dokan

I am pleased to announce the release of open source Dokan library 0.3.2.

Dokan is a user-mode file system for Windows. You can make your open file system very easily!
Now dokan is released under open source license.

Dokan contains LGPL, GPL and MIT licensed programs.
- user-mode library (dokan.dll) LGPL
- driver (dokan.sys) GPL
- control program (dokanctl.exe) MIT
- mount service (mounter.exe) MIT

You can download new dokan library and source code from Download Page.
You must uninstall previous version and restart your computer BEFORE install new version.

Changes from 0.2.6
- Changed license
- Fixed directory entries when accessed by Windows file sharing
- Refactoring

I added new document to Doc
How to build dokan library
Sorry, link was broken.

29 Responses to “Open Source Dokan library 0.3.2 released”

  • Open Source Dokan library 0.3.2 released | Guide Open Source
    May 26th, 2008 at 5:03 pm

    [...] Mike Riversdale wrote an interesting post today onHere’s a quick excerptI am pleased to announce the release of open source Dokan library 0.3.2. Dokan is a user-mode file system for Windows. You can make your open file system very easily! Now dokan is released under open source license. … [...]

  • Kein
    May 26th, 2008 at 6:44 pm

    Hi Hiroki.

    First I thank you for your work.

    I’m actually working on a project using a serial device to retrieve data from a card and i’ve fought with Namespace Exstension for long and still miss some functionnality.

    As the project include a linux part I’ve worked with fuse and then discovered your project which is very interesting.

    I was just wondering if there was not a way to unmount automatically when the process exit. Else I will find a way it’s just to know if you had implemented the function and I just missed it.

    Keep your good work.

  • Hiroki
    May 27th, 2008 at 2:26 am

    Hello, kein

    Dokan doesn’t have automatic unmount feature. If you stop your user-mode file system, you should run “dokanctrl /u drive_letter” to unmount the drive. I think it is important for Dokan to work correctly even if user-mode application hanged up, so Dokan needs automatic unmount feature. I’ll implement it in the feature version.

  • Sebastian
    May 27th, 2008 at 4:36 am

    Hi Hiroki,

    I’m developing a commercial/shareware .Net application and am using your Dokan.NET framework. Now I’m a little confused about the licensing, concerning the redistribution of your different library parts.
    I know that the LGPL allows me to redistribute the (unchanged) dokan.dll as well as the DokanNet.dll with my installer. But how about the Dokan.sys (driver…I guess the dokan.dll needs it, right?)? Can I redistribute it as well?
    If not, how should I proceed? Can I include your installer in my installer? Shall I redirect users to your website and make them install the Dokan lib themselves?

    Just to make sure…I’m talking about unmodified versions of all libraries.

    Again, my best regards for your work!

    Sebastian

  • Hiroki
    May 27th, 2008 at 7:21 am

    Hello, Sebastian

    You can redistribute Dokan library under GPL license. If you don’t change Dokan library, you can include Dokan library in your package
    without any source code. GPL doesn’t taint your software because Dokan driver and your program are separate programs. Your software can link to dokan.dll because dokan.dll is LGPL.
    (dokan.dll needs dokan driver.)

    For more details of GPL, please check FAQ of GPL.
    http://www.gnu.org/licenses/gpl-faq.html

    To install Dokan library, you need to setup Dokan library correctly, so I recommend you to launch Dokan installer from your installer.

  • Kein
    May 27th, 2008 at 3:29 pm

    Hi Hiroki,
    thanks for the answer I’ll be sure to check for the newer version.

    Another question has come to me, why is there so much repeated call to certain functions.
    For example by selecting a file the readfile method is called twice.

    Is it the way Windows works or I made a mistake somewhere?

    Thanks again for your work, it works very well. I have already exceeded the level where I was with my Namespace Extension.

  • Sebastian
    May 27th, 2008 at 9:17 pm

    @Kein

    AFAIK, these multiple calls are normal, since Windows tries to read the file headers, in order to gain information about the file (e.g. read the thumbnail from a jpeg header to display it in the “Thumbnail” view). Because some headers are larger than others, Windows normally hands over a buffer of the size 4096, lets it be filled (by you) and then checks it for the required information. If Win can’t find e.g. the jpeg’s metadata or the thumbnail from the example above, it hands over another buffer of the size 4096, and then another and another…..until you have pushed through the whole file. This happens, for example, if you have a jpg photo with no metadata header.

  • HarryH
    May 28th, 2008 at 12:10 am

    Many thanks Hiroki, I appreciate your hard work in getting this directory issue fixed for me.. I will try it out very shortly.

    Thanks Again,
    HarryH

  • yukoba
    May 28th, 2008 at 9:11 am

    I created following things. Please see! And I’m glad if this patches are add to official packages.

    1. Windows 2000 patch
    2. Add “-noLockOnSource” option to mirror file system
    3. Java Wrapper – JDokan
    4. MemoryFS
    5. JSFlickrFS

    http://yukoba.accelart.jp/2008/05/windows-fuse-dokan-become-open-source.html

  • Hiroki
    May 28th, 2008 at 3:19 pm

    Hello, yukoba

    Thank you very much for your contribution.
    I was amazed by your speedy job. I want to try your Java binging when I have a time.

    Win2k issue:
    Dokan doesn’t support Win2k because I don’t have testing environment and I don’t afford to test on many platforms. I saw your patch, but it causes memory leaks when filter driver is used. FsRtlTeardownPerStreamContexts must be called when FCB is freed.
    I found how to handle this problem, so I may release Win2k support version without binary release.

    mirror issue:
    I didn’t notice that application can’t be launched from mirrored file system. I’ll try to check it later.

    Thanks

  • naguine
    June 3rd, 2008 at 5:59 am

    Hi Hiroki,
    thanks for this wonderful tool !
    I’m builing a C program that redirects
    Dokan calls to the network, and i
    would like to contribute it when
    it’s ready (a week or so).
    Would you be interested in
    incorporating it in Dokan ?
    I also have a question about useability :
    i would love it if dokan could be used
    without the need for it to be installed, so that you could distribute an executable that works
    right out of the box. I have absolutely no knowledge about windows, but do you think it’s possible ?
    thanks again,
    cheers

  • Hiroki
    June 4th, 2008 at 3:11 pm

    Hello, naguine

    Automatic installing is difficult for Dokan because Dokan library needs some setup; installing driver, registering service. To make it uninstallable is also important, so Dokan needs the installer.

  • Alex Besogonov
    June 7th, 2008 at 1:15 am

    FYI, I’m starting to implement FUSE binding support.

    So far, everything looks fine.

    Except that it would be nice to support mounting in arbitrary directories, not just on top-level disks.

  • Alex Besogonov
    June 7th, 2008 at 5:36 am

    Ok, I have some questions now :)

    It is not possible to have several Dokan sessions in one process at the same time. But it should be fairly easy to add it, as far as I can see there are just a few globals which can be fairly easy eliminated.

    Next, is it possible to implement “fuse_interrupted” function? It tells if a request has been interrupted.

    Also, can you tell me your e-mail? I can’t find it on this site.

  • Hiroki
    June 7th, 2008 at 4:02 pm

    Hello, Alex

    > It is not possible to have several Dokan sessions in one process
    > at the same time. But it should be fairly easy to add it, as far
    > as I can see there are just a few globals which can be fairly
    > easy eliminated.

    Dokan can handle multiple mounts at once when you mount drives from separate multiple programs. I also think it is useful to be able to multiple mount from one program, so I’ll add this feature next version.

    > Next, is it possible to implement “fuse_interrupted” function?
    > It tells if a request has been interrupted.
    What do you mean “interrupted”? A request is already canceled?

    > Also, can you tell me your e-mail? I can’t find it on this site.
    I put email address on top page.

    Thanks

  • oz
    June 14th, 2009 at 7:49 pm

    Find the files you are looking for at my-dvdrip.com the most comprehensive source for free-to-try files downloads on the Web

  • Nitin
    October 3rd, 2009 at 9:18 pm

    Hi,
    pls provide example of dokan.net library which allows to create virtual folders & files in virtual drive..

    Regards,
    Nitin Sawant

  • click here for yankee candles
    March 1st, 2011 at 12:15 am

    Discount Yankee Candles…

    [...]while the sites we link to below are completely unrelated to ours, we think they are worth a read, so have a look[...]…

  • buy yakee candles
    March 1st, 2011 at 9:28 pm

    Buy Yankee Candles Cheap…

    [...]below you’ll find the link to some sites that we think you should visit[...]…

  • anchorage human resources jobs
    March 8th, 2011 at 12:55 pm

    State Specific Jobs…

    [...]we like to honor other sites on the web, even if they aren’t related to us, by linking to them. Below are some sites worth checking out[...]…

  • FlemingALLYSON
    March 18th, 2011 at 7:14 am

    A lot of specialists tell that home loans help people to live their own way, just because they can feel free to buy necessary stuff. Moreover, some banks present short term loan for different classes of people.

  • oakley sunglasses outlet
    June 17th, 2011 at 8:44 pm

    keep an eye on or instantly wear a couple personally

  • chi ceramic flat iron
    June 17th, 2011 at 8:58 pm

    Even while, superior boots are linked to styles that appear simple and easy

  • discount handbags
    June 17th, 2011 at 8:59 pm

    In reality, it’ s unquestionably appropriate.

  • Generic Viagra
    June 25th, 2011 at 5:16 am

    I’m builing a C program that redirects
    Dokan calls to the network, and i
    would like to contribute it when
    it’s ready (a week or so).

  • new era hats
    July 14th, 2011 at 5:44 pm
  • prada handbags replica
    July 16th, 2011 at 10:01 am

    WOW! I was also wondering how that was done as I want to cover the fabric with beads. Now I just have to find the kits. Thanks a lot. Kathy

  • designer leather handbags
    July 16th, 2011 at 4:11 pm

    One of the best blogs I have ever come across. Thanks for putting this together and sharing with us.

  • Cheap Abercrombie and Fitch
    July 18th, 2011 at 12:50 pm

    I am great to see this blog, I hope many people can research it.