Dokan library 0.4.0 released
Dokan library 0.4.0 has just been released!
I’m pleased to announce the launch of new version of Dokan library. I completely redesigned the driver event handling model. There are a lot of improvements from the previous version. You must recompile all programs which use Dokan library because dokan.h is changed and this version is not compatible with the previous one. You need to update Dokan.NET, Dokan Ruby and Dokan SSHFS.
The license of Dokan driver is changed to LGPL from GPL.
- driver (dokan.sys) : LGPL
- dll (dokan.dll) : LGPL
- mounter, dokanctl, mirror sample : MIT
Dokan API is changed.
The difference of dokan.h is here
I changed to pass DOKAN_OPTIONS (which is passed to DokanMain) in DOKAN_FILE_INFO structure
and I put GlobalContext in DOKAN_OPTIONS structure. I add “DeleteOnClose” in DOKAN_FILE_INFO structure and changed the usage of Cleanup, DeleteFile and DeleteDirectory.
You should not delete file on DeleteFile or DeleteDirectory. When DeleteFile or DeleteDirectory, you must check whether you can delete or not, and return 0 (when you can delete it) or appropriate error codes such as -ERROR_DIR_NOT_EMPTY, -ERROR_SHARING_VIOLATION. When you return 0 (ERROR_SUCCESS), you get Cleanup with FileInfo->DeleteOnClose set TRUE, then you delete the file.
Changes from 0.3.9.
- Fixed: error during multiple file deletion. issue
- Fixed: excel support issue
- Fixed: file deletion in Explorer issue
- Fixed: improper CloseHandle issue
- Supported: filesytem wide context issue
- Fixed: 0 byte read issue
- Fixed: saving new file in notepad issue
x64 version coming soon.
Recent Comments