private void OnWroteSTAThread(object s, FileSystemEventArgs a) { if (YNDialogW.Ask("Открыть файл заново", "Файл был изменен. Открыть новый файл??")) { Reopening?.Invoke(); BinaryFormatter formatter = new BinaryFormatter(); /* var stream = File.Open(System.IO.Path.Combine(watcher.Path, FileName), FileMode.Open, FileAccess.Read, FileShare.ReadWrite); * DeflateStream deflstr = new DeflateStream(stream, CompressionMode.Decompress); * rent = (AudioRent)formatter.Deserialize(deflstr); * deflstr.Dispose(); * stream.Dispose();*/ using (var stream = File.Open(System.IO.Path.Combine(watcher.Path, FileName), FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) { using (DeflateStream deflstr = new DeflateStream(stream, CompressionMode.Decompress)) { try { rent = (AudioRent)formatter.Deserialize(deflstr); } catch { MessageBox.Show("Файл поврежден!!!"); return; } } } } }
internal static bool Ask(string title, string text) { YNDialogW w = new YNDialogW(); w.Title = title; w.TB.Text = text; w.Resources["Style"] = Application.Current.MainWindow.Resources["Style"]; w.ShowDialog(); return(w.ans); }