File size: 1,304 Bytes
60bd5ce | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | using System;
using System.Runtime.InteropServices;
namespace FastSeekWpf.NativeInterop;
[StructLayout(LayoutKind.Sequential)]
internal struct MFT_ENUM_DATA_V0
{
public ulong StartFileReferenceNumber;
public long LowUsn;
public long HighUsn;
}
[StructLayout(LayoutKind.Sequential)]
internal struct USN_JOURNAL_DATA_V0
{
public ulong UsnJournalID;
public long FirstUsn;
public long NextUsn;
public long LowestValidUsn;
public long MaxUsn;
public ulong MaximumSize;
public ulong AllocationDelta;
}
[StructLayout(LayoutKind.Sequential)]
internal struct READ_USN_JOURNAL_DATA_V0
{
public long StartUsn;
public uint ReasonMask;
public uint ReturnOnlyOnClose;
public ulong Timeout;
public ulong BytesToWaitFor;
public ulong UsnJournalID;
}
[StructLayout(LayoutKind.Sequential)]
internal struct USN_RECORD_V2
{
public uint RecordLength;
public ushort MajorVersion;
public ushort MinorVersion;
public ulong FileReferenceNumber;
public ulong ParentFileReferenceNumber;
public long Usn;
public ulong TimeStamp;
public uint Reason;
public uint SourceInfo;
public uint SecurityId;
public uint FileAttributes;
public ushort FileNameLength;
public ushort FileNameOffset;
// FileName follows
}
|