-
Notifications
You must be signed in to change notification settings - Fork 20
Expand file tree
/
Copy pathAdapterRegistration.pkgdef
More file actions
193 lines (156 loc) · 9.05 KB
/
Copy pathAdapterRegistration.pkgdef
File metadata and controls
193 lines (156 loc) · 9.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
;
; Registration for the SampleDebugAdapter engine
;
; -------------------------------------------------------------------
; The GUID below should be replaced with a unique GUID for each adapter.
[$RootKey$\AD7Metrics\Engine\{FACADEAA-DD82-4F36-92C4-E0D9615F0EB6}]
;
; Boilerplate settings
; These settings are required and are the same for all debug adapters
;
; Indicates that the "Debug Adapter Host" engine should be used
"CLSID"="{DAB324E9-7B35-454C-ACA8-F6BB0D5C8673}"
; Indicates that the engine should be loaded directly by VS
"AlwaysLoadLocal"=dword:00000001
; Address and callstack breakpoints are not currently supported by the Debug Adapter Host
"AddressBP"=dword:00000000
"CallStackBP"=dword:00000000
;
; Adapter capabilities
; These settings indicate to VS what features the adapter supports
;
; "Attach to Process" support
; To support attaching via the VS "Attach to Process" dialog:
; - Set the "Attach" property to "1" below
; - Provide a port supplier GUID. To attach to processes on the local machine by PID, the default
; port supplier is suffient, and can be used by uncommenting the "PortSupplier" property below.
; - Provide a custom IAdapterLauncher implementation to generate launch configuration JSON
; for the adapter based on the selection in the "Attach to Process" dialog, and specify
; its CLSID in the "AdapterLauncher" property below.
"Attach"=dword:00000000
;"PortSupplier"="{708C1ECA-FF48-11D2-904F-00C04FA302A1}"
;"AdapterLauncher"="{adapter-launcher-guid}"
; Set to "1" if the debug adapter will use the VS "Exception Setting" tool window. The debug adapter's must
; support one of the following:
; - Exception Breakpoints
; The debug adapter's response to the "initialize" request must contain a set of ExceptionBreakpointFilters,
; and the "ExceptionBreakpointCategory" property must be defined below. An optional set of
; "ExceptionBreakpointMappings" may also be provided if the VS exception names do not correspond to the
; "Label" properties of the ExceptionBreakpointFilters.
; - Exception Options
; The debug adapter's response to the "initialize" request must contain the "SupportsExceptionOptions"
; and "SupportsExceptionDetailsRequest" flags, and ExceptionCategoryMapping information must be supplied.
"Exceptions"=dword:00000001
; Set to "1" if the debug adapter supports the VS exception conditions experience (For skipping exceptions in specific modules).
; The debug adapter's response to the "initialize" request must contain the "SupportsExceptionConditions"
; and "SupportsExceptionDetailsRequest" flags.
"ExceptionConditions"=dword:00000000
;
; Debug Adapter Host settings
; These settings control the behavior of the Debug Adapter Host
;
; Name of the debug adapter
; This appears in VS in several places. For example:
; - The "Select Code Type" dialog for choosing which debugger to attach to a process (if Attach is supported)
; - The "Debugging" column of the "Processes" tool window
"Name"="Sample Debug Adapter"
; Path to the debug adapter executable
"Adapter"="$PackageFolder$\adapter\SampleDebugAdapter.exe"
; Arguments for the debug adapter executable (optional)
;"AdapterArgs"="/arg1 /arg2"
; Language name
; This appears in (e.g.) the "Language" column of the Stack Trace tool window.
"Language"="SampleDebugAdapter"
; Language service (optional)
; If the adapter has an associated VS Language Service, specify its GUID in the "LanguageId" property
;"LanguageId"="{language-service-guid}"
; Locals Scope Name (optional)
; If a debug adapter returns a single scope in response to the "scopes" request, its contents are shown as
; top-level items in the "Locals" window in VS. If more than one scope is returned in response to the
; "scopes" request, each scope's name is displayed as a top-level item in the "Locals" window, and the
; contents of the scope are shown as children of the top-level item. In this scenario, the contents of
; a scope can be promoted to top-level items by specifying the name of the scope here.
;"LocalsScopeName"="Locals"
; Modules request on attach behavior (optional)
; If a debug adapter supports the "modules" request, the Debug Adapter Host will issue a request to get
; the list of modules on attach. Some debug adapters automatically send a set of "module" events on
; attach and don't need the "modules" request, so it can be disabled by setting this property to "1".
;"SuppressModulesRequestOnAttach"=dword:00000001
; Custom Protocol Extensions (optional)
; A debug adapter can implement non-standard extensions to the VS Code Debug Protocol, e.g. to communicate with
; custom UI or services hosted in Visual Studio. To register custom protocol extensions, provide an implementation
; of "ICustomProtocolExtension", and specify its CLSID below. The CLSID is defined in the "Type Registrations"
; section of this file.
"CustomProtocolExtension"="{0808AE96-CC4F-44D8-A422-8DC7D3B35EE8}"
; ExceptionBreakpoint category (optional)
; If a debug adapter supports Exception Breakpoints, it may map them to a category in the VS "Exception Settings"
; tool window. The GUID of the category should be provided below, and the category's "State" value should include
; the "EXCEPTION_IS_VSCODE_FILTER" flag (0x10000).
;"ExceptionBreakpointCategory"="{category-guid}"
;
; Exception Category Mappings (optional)
; These settings map VS exception category GUIDs to VS Code Protocol exception categories
;
; -------------------------------------------------------------------
[$RootKey$\AD7Metrics\Engine\{FACADEAA-DD82-4F36-92C4-E0D9615F0EB6}\ExceptionCategoryMappings]
; Mapping between protocol category "SDA" (as used by the Sample Debug Adapter) and associated VS exception
; category, defined below. If the debug adapter supports exceptions, but not categories, a protocol category
; of "*" can be used.
"SDA"="{4BF22514-1EBE-407F-9A54-50C045F90AD1}"
;
; Exception Breakpoint Mappings (optional)
; These settings map VS exception types to VS Code Exception Breakpoint Filters when the exception type names
; do not correspond to the exception filter labels.
;
; -------------------------------------------------------------------
;[$RootKey$\AD7Metrics\Engine\{FACADEAA-DD82-4F36-92C4-E0D9615F0EB6}\ExceptionBreakpointMappings]
;"vs-exception-name"="vscode-filter-id"
;
; Registration for the SampleDebugAdapter custom exceptions
; Exception "state" is represented as a bitwise-or of any of the following values:
; - 0x0001: Stop when the exception is thrown (EXCEPTION_STOP_FIRST_CHANCE)
; - 0x0002: Stop if the exception is thrown and not caught (EXCEPTION_STOP_SECOND_CHANCE)
; - 0x0020: Stop if the exception is thrown and not caught by "user code" (EXCEPTION_STOP_USER_UNCAUGHT)
; - 0x1000: Exception has an associated numeric code
; - 0x2000: Numeric code should be displayed in the UI in hex
; - 0x4000: "Just My Code" supported - required for "user uncaught" exceptions
; - 0x10000: Exception category is a set of Visual Studio Code exception filters
; NOTE: Visual Studio doesn't allow exceptions to be completely ignored, so all exception states
; automatically include EXCEPTION_STOP_SECOND_CHANCE
;
; -------------------------------------------------------------------
[$RootKey$\AD7Metrics\Exception\{4BF22514-1EBE-407F-9A54-50C045F90AD1}]
; Category registration
[$RootKey$\AD7Metrics\Exception\{4BF22514-1EBE-407F-9A54-50C045F90AD1}\Sample Debug Adapter Exceptions]
; Default state for exceptions in this category (Break when user uncaught)
"State"=dword:00004022
;
; Exception type registrations
; A "State" is required for all exception types
;
; -------------------------------------------------------------------
; SampleException1 - State = Break when thrown
[$RootKey$\AD7Metrics\Exception\{4BF22514-1EBE-407F-9A54-50C045F90AD1}\Sample Debug Adapter Exceptions\SampleException1]
; State for this exception
"State"=dword:00004001
; Optional numeric code associated with this exception (include 0x1000 in "State" if used)
;"Code"=dword:00000000
; SampleException2 - State = Break when thrown
[$RootKey$\AD7Metrics\Exception\{4BF22514-1EBE-407F-9A54-50C045F90AD1}\Sample Debug Adapter Exceptions\SampleException2]
"State"=dword:00004001
; SampleException3 - State = Break when user-uncaught
[$RootKey$\AD7Metrics\Exception\{4BF22514-1EBE-407F-9A54-50C045F90AD1}\Sample Debug Adapter Exceptions\SampleException3]
"State"=dword:00004020
; SampleException4 - State = Break when user-uncaught
[$RootKey$\AD7Metrics\Exception\{4BF22514-1EBE-407F-9A54-50C045F90AD1}\Sample Debug Adapter Exceptions\SampleException4]
"State"=dword:00004020
;
; Type Registrations
; These settings register various types that implement extensibility interfaces provided by the Debug Adapter Host
;
; -------------------------------------------------------------------
; Protocol extension registration
[$RootKey$\CLSID\{0808AE96-CC4F-44D8-A422-8DC7D3B35EE8}]
"Assembly"="SampleDebugAdapter.VSIX"
"Class"="SampleDebugAdapter.VSIX.CustomProtocolExtension.SampleExtension"
"CodeBase"="$PackageFolder$\SampleDebugAdapter.VSIX.dll"