예제 #1
0
        public VirtualFileSystemInfo(string path, ulong length, ulong offset, VirtualDirectoryInfo parent,
                                     bool preCheck = true)
        {
            var isDirectory = false;

            FullName = path;
            if (length == 0)
            {
                if (!File.GetAttributes(path).HasFlag(FileAttributes.Directory))
                {
                    length = (ulong)new FileInfo(path).Length;
                }
                else
                {
                    isDirectory = true;
                }
            }

            FileLength          = length;
            ParentDefinedLength = length;
            Offset = offset;
            Parent = parent;
            if (Parent != null)
            {
                Initialized = Parent.Initialized;
                Obfuscation = Parent.Obfuscation;
                VFSIBytes   = Parent.VFSIBytes;
            }
            else if (!isDirectory && preCheck)
            {
                Initialize();
            }
        }
예제 #2
0
 public HIPFileInfo(string path, ulong length, ulong offset, VirtualDirectoryInfo parent, bool preCheck = true) :
     base(path, length,
          offset, parent, preCheck)
 {
     InitGetHeader();
 }
예제 #3
0
 public HPLFileInfo(string path, ulong length, ulong offset, VirtualDirectoryInfo parent, bool preCheck = true) :
     base(path, length,
          offset, parent, preCheck)
 {
 }