Breakpoint2::FilterBy Property
Visual Studio 2015
Gets or sets a condition at which a breakpoint is set.
Assembly: EnvDTE80 (in EnvDTE80.dll)
You can specify one or more conditions at which a breakpoint is set. Use &(AND), ||(OR), !(NOT), and parentheses to combine the following clauses:
MachineName == "machine"
ProcessID == 123
ProcessName = "process"
ThreadID = 123
ThreadName = "thread"
If no conditions are specified, the breakpoint is set in all processes and threads on any machine.
The following example demonstrates how to use the FilterBy property.
public static void FilterBy(EnvDTE80.DTE2 dte) { // Setup debug Output window. Window w = (Window)dte.Windows.Item(EnvDTE.Constants.vsWindowKindOutput); w.Visible = true; OutputWindow ow = (OutputWindow)w.Object; OutputWindowPane owp = ow.OutputWindowPanes.Add("FilterBy Property Test"); owp.Activate(); EnvDTE80.Debugger2 debugger = (EnvDTE80.Debugger2)dte.Debugger; debugger.Breakpoints.Add("", "Target001.cs", 15, 1, "", EnvDTE.dbgBreakpointConditionType.dbgBreakpointConditionTypeWhenTrue, "C#", "", 0, "", 0, EnvDTE.dbgHitCountType.dbgHitCountTypeNone); EnvDTE80.Breakpoint2 b2 = (EnvDTE80.Breakpoint2)debugger.Breakpoints.Item(1); b2.FilterBy = "MachineName == " + "MyMachine" + " & " + "ProcessID == " + "1000" + " & " + "ProcessName == " + "NewProcess"; string strFilterBy = b2.FilterBy.ToString(); owp.OutputString(strFilterBy + "\n"); }
Show: