|
@@ -58,6 +58,7 @@ namespace PDF_Master.Model.Dialog.ToolsDialogs
|
|
|
compressquality = e.Parameters.GetValue<int>("compressDialogModel.CompressQuality");
|
|
|
if (doc != null)
|
|
|
{
|
|
|
+
|
|
|
App.mainWindowViewModel.Value = 0;
|
|
|
App.mainWindowViewModel.ProgressTitle = "Compressing";
|
|
|
App.mainWindowViewModel.IsProcessVisible = System.Windows.Visibility.Visible;
|
|
@@ -66,11 +67,11 @@ namespace PDF_Master.Model.Dialog.ToolsDialogs
|
|
|
document.UnlockWithPassword(password);
|
|
|
indexDelegate += GetIndex;
|
|
|
compressingIntpr = document.CompressFile_Init(compressquality, indexDelegate);
|
|
|
- //GC.KeepAlive(indexDelegate);
|
|
|
+ GC.KeepAlive(indexDelegate);//关键 防止委托过早回收
|
|
|
tempDocument = document;
|
|
|
Trace.WriteLine("compressDialogModel.CompressQuality" + compressquality);
|
|
|
App.mainWindowViewModel.ProcessCloseAction = CompressClear;
|
|
|
- if (await Task.Run<bool>(() => { return document.CompressFile_Start(compressingIntpr, filepath); })) { CommonHelper.ShowFileBrowser(filepath); }
|
|
|
+ if (await Task.Run<bool>(() => { return document.CompressFile_Start(compressingIntpr, filepath); })) { CommonHelper.ShowFileBrowser(filepath); }
|
|
|
|
|
|
document.Release();
|
|
|
}
|