Exemple #1
0
        public static unsafe IEnumerable <StreamInformation> Create(FILE_STREAM_INFORMATION *info)
        {
            var   infos = new List <StreamInformation>();
            byte *start = (byte *)info;

            while (true)
            {
                infos.Add(new StreamInformation(info));
                if (info->NextEntryOffset == 0)
                {
                    break;
                }
                info = (FILE_STREAM_INFORMATION *)(start + info->NextEntryOffset);
            }
            return(infos);
        }
Exemple #2
0
 public unsafe StreamInformation(FILE_STREAM_INFORMATION *info)
 {
     Name           = info->StreamName.CreateString();
     Size           = info->StreamSize;
     AllocationSize = info->StreamAllocationSize;
 }