private void RemoveFile()
{
try
{
_sevenZipExtractor = new SevenZipExtractor(_archivePath);
_sevenZipCompressor = new SevenZipCompressor(tempPath);
_sevenZipCompressor.DirectoryStructure = true;
_sevenZipCompressor.IncludeEmptyDirectories = true;
_sevenZipCompressor.PreserveDirectoryRoot = true;
_sevenZipCompressor.Compressing += Compressing;
_sevenZipCompressor.FileCompressionStarted += FileCompressionStarted;
_sevenZipCompressor.CompressionFinished += CompressionFinished;
_sevenZipCompressor.FileCompressionFinished += FileCompressionFinished;
var fileIndexDictionary = new Dictionary<int, string>();
foreach (ArchiveFileInfo archiveFileInfo in _sevenZipExtractor.ArchiveFileData)
{
if (!archiveFileInfo.IsDirectory && _fileAndDirectoryFullPaths.Contains(archiveFileInfo.FileName))
{
fileIndexDictionary.Add(archiveFileInfo.Index, null);
}
}
_sevenZipCompressor.ModifyArchive(_archivePath, fileIndexDictionary);
Done();
}
catch
{
/*
var dialog = new TaskDialog();
dialog.StandardButtons = TaskDialogStandardButtons.Ok;
dialog.Text = ex.Message;
dialog.Show();
Invoke(new InvokeNone(Dispose));
*/
}
}