I'm developing a kind of virtual filesystem and I'm using dokan.
My FS is mapped to a remote storage, therefore, when the user try to
open a file, the file itself doesn't exists. I have to bring it back
from the network.
This process could last for a while, so instead of blocking the read
method, I would like to return something like "WAIT_FOR_DATA" or,
"ASK_ME_LATER".
Currently, as far as I know, read method can return 3 states: (through
return value and *ReadLength parameter)
* negative value -> there has been an error.
* greater than 0 -> the size that you have been read
* 0 -> this is the end of the file.
In my situation, actually I have 0 bytes, but I don't want to return 0
because this marks the end of the file, and the client program ( say
VLC ) would stop making request for data and close the file.
I cannot return any value greater than 0, because I dont have that
data.
So, there is any way ( maybe a error return ) that could say windows
that "I don't have the data, but keep asking me" without blocking the
read thread?
Thanks in advance.
Each callback function must return a value within 15 seconds.
Currently there is no way to extend the timeout. I'm thinking about
adding that feature.
Can you get a data within 15 seconds?
You can extend the timeout by editing following variables, but you need to build
the driver by yourself.
\sys\dokan.h
#define DOKAN_NOTIFICATION_TIMEOUT 15 // in seconds
#define DOKAN_IPR_PENDING_TIMEOUT 15 // in seconds
Thanks,
> --
>
> You received this message because you are subscribed to the Google Groups "Dokan" group.
> To post to this group, send email to do...@googlegroups.com.
> To unsubscribe from this group, send email to dokan+un...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/dokan?hl=en.
>
>
>
In some situations I need more than that 15 seconds, much more indeed.
I'll give a try extending that time modifiying the #define, but I
think that it would be more appropiate to return a value in those 15
seconds, but with the return value indicate windows that the request
should be asked again.
I read something about cancelling IRP requests but I'm not sure if it
would be useful in this cases.
> > For more options, visit this group athttp://groups.google.com/group/dokan?hl=en.- Ocultar texto de la cita -
>
> - Mostrar texto de la cita -