public static void PrintUsnEntry(IConsole console, UsnJournal usnJournal, UsnEntry usnEntry) { console.WriteLine(); console.WriteLine($"{"USN:",-20}{usnEntry.USN:X}"); console.WriteLine(usnEntry.IsFolder ? $"{"Directory:",-20}{usnEntry.Name}" : $"{"File:",-20}{usnEntry.Name}"); if (usnJournal.TryGetPathFromFileId(usnEntry.ParentFileReferenceNumber, out var path)) { path = $"{usnJournal.VolumeName.TrimEnd('\\')}{path}"; console.WriteLine($"{"Parent:",-20}{path}"); } if (usnEntry.TimeStamp > 0) { console.WriteLine($"{"Timestamp:",-20}{DateTime.FromFileTimeUtc(usnEntry.TimeStamp).ToLocalTime()}"); } console.WriteLine($"{"File ID:",-20}{usnEntry.FileReferenceNumber:X}"); console.WriteLine($"{"Parent File ID:",-20}{usnEntry.ParentFileReferenceNumber:X}"); var reason = ((UsnReason)usnEntry.Reason).ToString().Replace(',', '|'); console.WriteLine($"{"Reason:",-20}{reason}"); var sourceInfo = ((UsnSource)usnEntry.SourceInfo).ToString().Replace(',', '|'); console.WriteLine($"{"Source Info:",-20}{sourceInfo}"); }
public static void PrintEntryPath(IConsole console, UsnJournal usnJournal, UsnEntry usnEntry) { console.WriteLine(); console.WriteLine($"{"Name:",-20}{usnEntry.Name}"); console.WriteLine($"{"IsFolder:",-20}{usnEntry.IsFolder}"); if (usnJournal.TryGetPathFromFileId(usnEntry.ParentFileReferenceNumber, out var path)) { path = $"{usnJournal.VolumeName.TrimEnd('\\')}{path}"; console.WriteLine($"{"Parent:",-20}{path}"); } }