EldoS | Feel safer!

Software components for data protection, secure storage and transfer

OnEnumerateDirectoryC Never Called

Also by EldoS: Rethync
The cross-platform framework that simplifies synchronizing data between mobile and desktop applications and servers and cloud storages
Posted: 08/17/2008 08:23:22
by Joe Portman (Basic support level)
Joined: 05/28/2008
Posts: 21

Using the example program, with slight modification to always set the flags I am interested in:

        CbFltCallbackFlags flags =
          CbFltCallbackFlags.OpenCallback |
          CbFltCallbackFlags.CloseCallback |
          CbFltCallbackFlags.DeleteCallback |
          CbFltCallbackFlags.ReadCallback |
          CbFltCallbackFlags.WriteCalback |
          CbFltCallbackFlags.EnumerateDirectoryCallback |
          CbFltCallbackFlags.RenameCallback |
          CbFltCallbackFlags.SetBasicInfoCallback |

        Utilities.DebugOut("adding pattern: " + edtMask.Text + "flags: " + flags);
        mCbFlt.AddFilterCallbackRule(edtMask.Text, flags);

Using a pattern say of : *.xxx

According to the documentation, whenever a file of name *.xxx is enumerated by the system, I should get the callback?

IE, in dos box, cd to c:\tmp and dir *.xxx (and there are some xxx files in there), the function is not called.

Posted: 08/17/2008 09:38:07
by Eugene Mayevski (EldoS Corp.)

The developer will answer, but for me it seems that in your case you are monitoring events (including enumeration) on directories named *.xxx, not enumeration of files named *.xxx.

Sincerely yours
Eugene Mayevski
Posted: 08/18/2008 03:25:35
by Vladimir Cherniga (EldoS Corp.)

In order to filter partial directory content you should set filter on a parent directory which contains interested files.
In your case set filter rule to "c:\tmp" in order to filter enumeration only from "c:\tmp" directory or add "c:\tmp\*.*" in order to filter "c:\tmp" directory content and each subfolders content.



Topic viewed 3567 times

Number of guests: 1, registered members: 0, in total hidden: 0


Back to top

As of July 15, 2016 EldoS Corporation will operate as a division of /n software inc. For more information, please read the announcement.

Got it!