Hi Andreas,
I have noticed something that sounds similar to 1).
I'm using Visual Studio for my filesystem, and have two drives, i.e.
two threads calling DokanMain. (This is because both heavily share
resources (DBs mainly) and it simplifies + optimizes to have them in
the same process.)
Old habbits die hard and I keep doing shift-F5 when I want to make
some big changes. This means the drives don't get shutdown properly.
Sometimes this ends up with one or both the the drives not able to be
setup, like 1). What I've noticed is that using winobj.exe is that
there are sometimes dokan devices left over from the previous
executions. Debugging into a failing DokanMain I see it's trying to
recreate one of those devices, which of course it can't because they
exist. I'm guessing these devices should be closed down when what they
connect to is dead, but for some reason haven't. I've had a quick look
through the code a few times and haven't been able to see anything I
can do, and have put of looking harder for later. For now I curse
myself and just reboot the VM and get going again.
Don't know anything about 2) though.
Joe