Skip to content

peerdrive/erldokan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ErlDokan -- Erlang binding for Dokan

Dokan is a user mode file system library for Windows. This Erlang application
provides the bindings to create a user mode file system with Erlang using
Dokan.

== Building ==

Dependencies:

	* MSVC compiler (e.g. from Visual Studio 2010 Express)
	* Dokan Library (http://dokan-dev.net/en/)
	* Rebar (https://github.com/basho/rebar)

Start a Visual Studio shell (or execute vcvarsall.bat) and make sure that
Erlang and rebar are in your %PATH%. The Dokan library is assumed to be
installed in %ProgramFiles%\Dokan\DokanLibrary\. To compile just do a

	$ rebar compile

== Compiler and Erlang versions ==

It is essential that the erldokan library and the Erlang emulator are built
against the same MSVCRT lib (C run time library) version:

  R14: MSVCR80.dll (Visual Studio 2005)
  R15: MSVCR100.dll (Visual Stutio 2010)

Even though mixing the versions is generally possible it is known to hang the
emulator when being run as a service, that is without console. The root cause
is that each version of the C runtime library has its own state and
initialization and loading the erldokan_drv.dll with another runtime version
than the emulator triggers a deadlock on Windows XP. On Windows 7 it doesn't
seem to cause any problems, though.