DkmInspectionContext Class

Definition

Options and target context to use while performing the inspection operation.

public ref class DkmInspectionContext
[Windows::Foundation::Metadata::WebHostHidden]
public ref class DkmInspectionContext
[Windows::Foundation::Metadata::WebHostHidden]
class DkmInspectionContext
[System.Runtime.InteropServices.Guid("0807c826-3338-dd99-2f3a-202ba8fb9da7")]
public class DkmInspectionContext
[<System.Runtime.InteropServices.Guid("0807c826-3338-dd99-2f3a-202ba8fb9da7")>]
type DkmInspectionContext = class
Public Class DkmInspectionContext
Inheritance
DkmInspectionContext
Attributes

Properties

AdditionalVisualizationData

[Optional] Specifies an optional list of full paths to visualization files to use, in addition to the default files from the users profile directory and the Visual Studio installation directory. Precedence between conflicting visualizers in these paths, relative to the standard paths are resolved according to the information specified in 'AdditionalVisualizationDataPriority'.

This API was introduced in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

AdditionalVisualizationDataPriority

If AdditionalVisualizationData is specified, specifies the priority of such data, relative to the default search locations.

This API was introduced in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

EvaluationFlags

Flags which effect how an input expression should be parsed, compiled or displayed.

FuncEvalFlags

Flags impacting how function evaluation requests are performed.

InspectionSession

The InspectionSession allows the various components which examine data in the target process to store private data with the same lifetime. Inspection sessions are closed when the user attempts to continue the process.

Language

Language used to perform inspections.

Radix

The radix to use when formatting integer data. Currently supported values are '16' and '10'.

ReturnValue

[Optional] Deprecated - do not use. Instead, components should use the ReturnValues property as the list of all return values and set $ReturnValue to represent the last return value item in the list.

ReturnValues

[Optional] Raw representation of values for $ReturnValue1, $ReturnValue2, etc.

This API was introduced in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

RuntimeInstance

Indicates which runtime monitor will be used to perform this evaluation.

SymbolsConnection

[Optional] If non-null, this specifies a connection to a worker process where symbols for this inspection operation are processed. This will be null if symbols are loaded in the IDE process, or if they are loaded in the remote debugger (DkmModule.Connection is non-null).

This API was introduced in Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview).

Thread

The thread being examined.

Timeout

This is the timeout to be used for potentially slow operations such as a function evaluation. This value is in milliseconds.

Methods

ClrExpressionMayRequireParentheses(String)

Returns true if the expression may require parentheses when used as a sub-expression in the language.

Location constraint: API must be called from a Monitor component (component level < 100,000).

This API was introduced in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

Create(DkmInspectionSession, DkmRuntimeInstance, DkmThread, UInt32, DkmEvaluationFlags, DkmFuncEvalFlags, UInt32, DkmLanguage, DkmRawReturnValue)

Create a new DkmInspectionContext object instance.

Create(DkmInspectionSession, DkmRuntimeInstance, DkmThread, UInt32, DkmEvaluationFlags, DkmFuncEvalFlags, UInt32, DkmLanguage, DkmRawReturnValue, DkmCompiledVisualizationData, DkmCompiledVisualizationDataPriority)

Create a new DkmInspectionContext object instance.

This API was introduced in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

Create(DkmInspectionSession, DkmRuntimeInstance, DkmThread, UInt32, DkmEvaluationFlags, DkmFuncEvalFlags, UInt32, DkmLanguage, DkmRawReturnValue, DkmCompiledVisualizationData, DkmCompiledVisualizationDataPriority, ReadOnlyCollection<DkmRawReturnValueContainer>)

Create a new DkmInspectionContext object instance.

This API was introduced in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

Create(DkmInspectionSession, DkmRuntimeInstance, DkmThread, UInt32, DkmEvaluationFlags, DkmFuncEvalFlags, UInt32, DkmLanguage, DkmRawReturnValue, DkmCompiledVisualizationData, DkmCompiledVisualizationDataPriority, ReadOnlyCollection<DkmRawReturnValueContainer>, DkmWorkerProcessConnection)

Create a new DkmInspectionContext object instance.

This API was introduced in Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview).

EvaluateExpression(DkmWorkList, DkmLanguageExpression, DkmStackWalkFrame, DkmCompletionRoutine<DkmEvaluateExpressionAsyncResult>)

Bind the input expression and evaluate it. Then format the resulting value for display in the debugger. This is used for data tips, the watch windows, the immediate window, etc.

This method will append a new work item to the specified work list, and return once the work item has been appended. The actual processing of the work item is asynchronous. The caller will be notified that the request is complete through the completion routine.

Location constraint: IDE components may call this method regardless of what type of code is being debugged. This method is also currently supported for debug monitor components, when debugging code running under the CLR; however this functionality may be removed in a future version.

EvaluateExpressionOnThreads(DkmWorkList, ReadOnlyCollection<UInt64>, DkmStackWalkFrame, DkmLanguageExpression, DkmCompletionRoutine<DkmEvaluateExpressionOnThreadsAsyncResult>)

Bind the input expression and evaluate it. Then format the resulting value for display in the debugger. This is used for data tips, the watch windows, the immediate window, etc.

This method will append a new work item to the specified work list, and return once the work item has been appended. The actual processing of the work item is asynchronous. The caller will be notified that the request is complete through the completion routine.

Location constraint: API must be called from an IDE component (component level > 100,000).

EvaluateReturnValue(DkmWorkList, DkmStackWalkFrame, DkmRawReturnValue, DkmCompletionRoutine<DkmEvaluateReturnValueAsyncResult>)

Evaluates and formats a given DkmRawReturnValue using solely the provided data.

This method will append a new work item to the specified work list, and return once the work item has been appended. The actual processing of the work item is asynchronous. The caller will be notified that the request is complete through the completion routine.

Location constraint: API must be called from an IDE component (component level > 100,000).

EvaluateReturnValue2(DkmWorkList, DkmStackWalkFrame, DkmRawReturnValueContainer, DkmCompletionRoutine<DkmEvaluateReturnValueAsyncResult2>)

Evaluates and formats a given DkmRawReturnValue using solely the provided data.

This method will append a new work item to the specified work list, and return once the work item has been appended. The actual processing of the work item is asynchronous. The caller will be notified that the request is complete through the completion routine.

Location constraint: API must be called from an IDE component (component level > 100,000).

This API was introduced in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

GetClrArrayIndexExpression(String[])

Get an array index expression.

Location constraint: API must be called from a Monitor component (component level < 100,000).

This API was introduced in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

GetClrCastExpression(String, DkmClrType, DkmClrCustomTypeInfo, DkmClrCastExpressionOptions)

Get a cast expression, if valid syntax.

Location constraint: API must be called from a Monitor component (component level < 100,000).

This API was introduced in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

GetClrExpressionAndFormatSpecifiers(String, ReadOnlyCollection<String>)

Splits the string into the expression and format specifier parts.

Location constraint: API must be called from a Monitor component (component level < 100,000).

This API was introduced in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

GetClrExpressionForNull()

Get the language specific expression for null (keyword).

Location constraint: API must be called from a Monitor component (component level < 100,000).

This API was introduced in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

GetClrExpressionForThis()

Get the language specific expression for this/Me.

Location constraint: API must be called from a Monitor component (component level < 100,000).

This API was introduced in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

GetClrLocalVariableQuery(DkmClrInstructionAddress, Boolean)

Get a DkmCompiledClrLocalsQuery to allow viewing of local variables.

Location constraint: API must be called from an IDE component (component level > 100,000).

This API was introduced in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

GetClrMemberName(String, DkmClrType, DkmClrCustomTypeInfo, String, Boolean, Boolean)

Get a member access expression, if it can be represented as valid syntax.

Location constraint: API must be called from a Monitor component (component level < 100,000).

This API was introduced in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

GetClrNameForField(DkmClrModuleInstance, Int32)
GetClrNameForLocalVariable(DkmClrModuleInstance, DkmClrMethodId, DkmILRange, DkmClrLocalVariable)
GetClrObjectCreationExpression(DkmClrType, DkmClrCustomTypeInfo, String[])

Get an object creation expression, if valid syntax.

Location constraint: API must be called from a Monitor component (component level < 100,000).

This API was introduced in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

GetClrTypeName(DkmClrType, DkmClrCustomTypeInfo)

Get the type name in a form valid in the language, if valid syntax. This method is for constructing valid full names with the ability to escape/return null if there is not a valid syntax.

Location constraint: API must be called from a Monitor component (component level < 100,000).

This API was introduced in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

GetClrValidIdentifier(String)

Get the identifier in a form valid in the language.

Location constraint: API must be called from a Monitor component (component level < 100,000).

This API was introduced in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

GetFrameArguments(DkmWorkList, DkmStackWalkFrame, DkmCompletionRoutine<DkmGetFrameArgumentsAsyncResult>)

Provides information on the arguments of a stack frame. This is currently only exposed through the VS automation model (EnvDTE.StackFrame.Arguments).

This method will append a new work item to the specified work list, and return once the work item has been appended. The actual processing of the work item is asynchronous. The caller will be notified that the request is complete through the completion routine.

Location constraint: IDE components may call this method regardless of what type of code is being debugged. This method is also currently supported for debug monitor components, when debugging code running under the CLR; however this functionality may be removed in a future version.

GetFrameLocals(DkmWorkList, DkmStackWalkFrame, DkmCompletionRoutine<DkmGetFrameLocalsAsyncResult>)

Gets an enumeration context used to obtain the local variables of this stack frame. This is used in computing the locals window.

This method will append a new work item to the specified work list, and return once the work item has been appended. The actual processing of the work item is asynchronous. The caller will be notified that the request is complete through the completion routine.

Location constraint: IDE components may call this method regardless of what type of code is being debugged. This method is also currently supported for debug monitor components, when debugging code running under the CLR; however this functionality may be removed in a future version.

GetFrameName(DkmWorkList, DkmStackWalkFrame, DkmVariableInfoFlags, DkmCompletionRoutine<DkmGetFrameNameAsyncResult>)

Provides a text representation for a stack frame. This is used when building the formatted call stack.

This method will append a new work item to the specified work list, and return once the work item has been appended. The actual processing of the work item is asynchronous. The caller will be notified that the request is complete through the completion routine.

Location constraint: IDE components may call this method regardless of what type of code is being debugged. This method is also currently supported for debug monitor components, when debugging code running under the CLR; however this functionality may be removed in a future version.

GetFrameReturnType(DkmWorkList, DkmStackWalkFrame, DkmCompletionRoutine<DkmGetFrameReturnTypeAsyncResult>)

Provides a text representation of the return type for one or more stack frame. This is currently only exposed through the VS automation model (EnvDTE.StackFrame.ReturnType).

This method will append a new work item to the specified work list, and return once the work item has been appended. The actual processing of the work item is asynchronous. The caller will be notified that the request is complete through the completion routine.

Location constraint: API must be called from an IDE component (component level > 100,000).

GetTypeName(DkmClrType, DkmClrCustomTypeInfo, ReadOnlyCollection<String>)

Gets the type name string to display in the UI for the given DkmClrType. This method will always return a value and is used in variable inspection windows.

Location constraint: API must be called from a Monitor component (component level < 100,000).

This API was introduced in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

Applies to