private static void Addto(FILL_FIND_FILE_DATA fill, DokanFileInfo rawFileInfo, FileInformation fi) { Debug.Assert(!string.IsNullOrEmpty(fi.FileName)); var ctime = ToFileTime(fi.CreationTime); var atime = ToFileTime(fi.LastAccessTime); var mtime = ToFileTime(fi.LastWriteTime); var data = new WIN32_FIND_DATA { dwFileAttributes = fi.Attributes, ftCreationTime = { dwHighDateTime = (int)(ctime >> 32), dwLowDateTime = (int)(ctime & 0xffffffff) }, ftLastAccessTime = { dwHighDateTime = (int)(atime >> 32), dwLowDateTime = (int)(atime & 0xffffffff) }, ftLastWriteTime = { dwHighDateTime = (int)(mtime >> 32), dwLowDateTime = (int)(mtime & 0xffffffff) }, nFileSizeLow = (uint)(fi.Length & 0xffffffff), nFileSizeHigh = (uint)(fi.Length >> 32), cFileName = fi.FileName }; //ZeroMemory(&data, sizeof(WIN32_FIND_DATAW)); fill(ref data, rawFileInfo); }
private static void Addto(FILL_FIND_FILE_DATA fill, DokanFileInfo rawFileInfo, FileInformation fi) { Debug.Assert(!String.IsNullOrEmpty(fi.FileName)); long ctime = fi.CreationTime.ToFileTime(); long atime = fi.LastAccessTime.ToFileTime(); long mtime = fi.LastWriteTime.ToFileTime(); var data = new WIN32_FIND_DATA { dwFileAttributes = fi.Attributes, ftCreationTime = { dwHighDateTime = (int) (ctime >> 32), dwLowDateTime = (int) (ctime & 0xffffffff) }, ftLastAccessTime = { dwHighDateTime = (int) (atime >> 32), dwLowDateTime = (int) (atime & 0xffffffff) }, ftLastWriteTime = { dwHighDateTime = (int) (mtime >> 32), dwLowDateTime = (int) (mtime & 0xffffffff) }, nFileSizeLow = (uint)(fi.Length & 0xffffffff), nFileSizeHigh = (uint)(fi.Length >> 32), cFileName = fi.FileName }; //ZeroMemory(&data, sizeof(WIN32_FIND_DATAW)); fill(ref data, rawFileInfo); }