/// <summary> /// Constructor /// </summary> /// <param name="fat">Handle to the Fat of the compound file</param> /// <param name="header">Handle to the header of the compound file</param> /// <param name="fileHandler">Handle to the file handler of the compound file</param> internal DirectoryTree(Fat fat, Header header, InputHandler fileHandler) { _fat = fat; _header = header; _fileHandler = fileHandler; Init(_header.DirectoryStartSector); }
/// <summary> /// Constructor /// </summary> /// <param name="fat">Handle to the Fat of the compound file</param> /// <param name="header">Handle to the header of the compound file</param> /// <param name="fileHandler">Handle to the file handler of the compound file</param> /// <param name="miniStreamStart">Address of the sector where the mini stream starts</param> internal MiniFat(Fat fat, Header header, InputHandler fileHandler, UInt32 miniStreamStart, UInt64 sizeOfMiniStream) : base(header, fileHandler) { _fat = fat; _miniStreamStart = miniStreamStart; _sizeOfMiniStream = sizeOfMiniStream; Init(); }
/// <summary> /// Initalizes a handle to a compound file with the given name /// </summary> /// <param name="fileName">The name of the file including its path</param> public StructuredStorageReader(string fileName) { try { _fileHandler = new InputHandler(fileName); _header = new Header(_fileHandler); _fat = new Fat(_header, _fileHandler); _directory = new DirectoryTree(_fat, _header, _fileHandler); _miniFat = new MiniFat(_fat, _header, _fileHandler, _directory.GetMiniStreamStart(), _directory.GetSizeOfMiniStream()); } catch { this.Close(); throw; } }