private void walkTheHeapToolStripMenuItem_Click(object sender, EventArgs e) { List <String> managedObjects = new List <String>(); foreach (DataGridViewRow row in dataGridViewMain.SelectedRows) { managedObjects.Add(((ManagedObject)row.DataBoundItem).ObjectName); } if (Process != null) { using (DataTarget dataTarget = DataTarget.AttachToProcess(Process.Id, dataTargetTimeOut, dataTargetAttachFlag)) { ClrInfo clrVersion = dataTarget.ClrVersions.First(); ClrRuntime runtime = clrVersion.CreateRuntime(); RetentionTreeViewer r = new RetentionTreeViewer(runtime, managedObjects); r.ShowDialog(this); } } else { RetentionTreeViewer r = new RetentionTreeViewer(null, managedObjects); r.ShowDialog(this); } }
private void openInRetentionTreeViewerToolStripMenuItem_Click(object sender, EventArgs e) { List <String> managedObjects = new List <String>(); ulong ptr = 0; if (treeViewObjects.SelectedNode != null) { ptr = ((ClrTypeHelper)treeViewObjects.SelectedNode.Tag).Ptr; } RetentionTreeViewer r = new RetentionTreeViewer(runtime, ptr); r.Show(this); }