private void SaveAllSnapshots_Click(object sender, EventArgs e)
{
if (Instance == null)
return;
if (Instance.Snapshots.Count == 0)
return;
using (var dialog = new FolderBrowserDialog()) {
dialog.Description = "Save snapshots to folder";
dialog.ShowNewFolderButton = true;
if (dialog.ShowDialog(this) != System.Windows.Forms.DialogResult.OK)
return;
using (Activities.AddItem("Saving snapshots"))
foreach (var snap in Instance.Snapshots) {
var destPath = Path.Combine(
dialog.SelectedPath,
String.Format(
"{0:0000}_{1}.heapsnap",
snap.Index,
snap.Timestamp.ToString("u").Replace(":", "_")
)
);
try {
File.Copy(snap.Filename, destPath, true);
} catch (Exception ex) {
MessageBox.Show("Save failed: " + ex.ToString());
return;
}
}
}
}