public UsnRecord(IntPtr p)
{
RecordLength = (uint)Marshal.ReadInt32(p);
FileReferenceNumber = (ulong)Marshal.ReadInt64(p, FrOffset);
ParentFileReferenceNumber = (ulong)Marshal.ReadInt64(p, PfrOffset);
FileAttributes = (uint)Marshal.ReadInt32(p, FaOffset);
FileNameLength = Marshal.ReadInt16(p, FnlOffset);
FileNameOffset = Marshal.ReadInt16(p, FnOffset);
FileName = Marshal.PtrToStringUni(new IntPtr(p.ToInt64() + FileNameOffset), FileNameLength / sizeof(char));
}
}