/// <summary> /// Gets a list of all the files in the arcive. /// </summary> /// <param name="rarFilename"></param> /// <returns></returns> public List <ArchivedFile> GetFilesInArchive(string rarFilename) { var results = new List <ArchivedFile>(); IUnrar unrar = Is64BitMode() ? (IUnrar) new Unrar64() : (IUnrar) new Unrar(); unrar.ExtractionProgress += OnExtractionProgress; unrar.MissingVolume += OnMissingVolume; unrar.Open(rarFilename, Unrar.OpenMode.List); while (unrar.ReadHeader()) { var file = new ArchivedFile(); file.Filename = unrar.CurrentFile.FileName; file.FileSize = unrar.CurrentFile.UnpackedSize; results.Add(file); } unrar.Close(); return(results); }
/// <summary> /// Gets a list of all the files in the arcive. /// </summary> /// <param name="rarFilename"></param> /// <returns></returns> public List<ArchivedFile> GetFilesInArchive(string rarFilename) { var results = new List<ArchivedFile>(); IUnrar unrar = Is64BitMode() ? (IUnrar)new Unrar64() : (IUnrar)new Unrar(); unrar.ExtractionProgress += OnExtractionProgress; unrar.MissingVolume += OnMissingVolume; unrar.Open(rarFilename, Unrar.OpenMode.List); while (unrar.ReadHeader()) { var file = new ArchivedFile(); file.Filename = unrar.CurrentFile.FileName; file.FileSize = unrar.CurrentFile.UnpackedSize; results.Add(file); } unrar.Close(); return results; }