private static bool WalkIntoDir(ref Spi.Native.Win32.WIN32_FIND_DATA findData, Predicate <string> EnterDir, bool FollowJunctions) { const uint FILE_ATTRIBUTE_REPARSE_POINT = 0x400; if ((findData.dwFileAttributes & FILE_ATTRIBUTE_REPARSE_POINT) != 0) { // 2015-12-01 Spindler is junction/symlink or whatever if (FollowJunctions == false) { return(false); } } if (EnterDir == null) { return(true); } return(EnterDir(findData.cFileName)); }
public static ulong GetFilesize(Spi.Native.Win32.WIN32_FIND_DATA find_data) { return(TwoUIntsToULong(find_data.nFileSizeHigh, find_data.nFileSizeLow)); }
public static bool IsDirectoryFlagSet(Spi.Native.Win32.WIN32_FIND_DATA find_data) { return(IsDirectoryFlagSet(find_data.dwFileAttributes)); }
public DirEntry(StringBuilder Dirname, Spi.Native.Win32.WIN32_FIND_DATA FindData, int BaseDirLen) { this.Dir = Dirname; this.BaseDirLen = BaseDirLen; this.FindData = FindData; }