ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSYS2/mingw32/i686-w64-mingw32/include/activdbg.idl
Revision: 1166
Committed: Tue Oct 26 14:22:36 2021 UTC (4 years ago) by rossy
File size: 41644 byte(s)
Log Message:
Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File Contents

# Content
1 /**
2 * This file is part of the mingw-w64 runtime package.
3 * No warranty is given; refer to the file DISCLAIMER within this package.
4 */
5
6 #ifndef DO_NO_IMPORTS
7 import "ocidl.idl";
8 import "oleidl.idl";
9 import "oaidl.idl";
10 #ifndef AD7_NO_AD7_IMPORTS
11 import "activscp.idl";
12 import "dbgprop.idl";
13 #endif
14 #endif
15
16 cpp_quote("#include <winapifamily.h>")
17 cpp_quote("")
18 cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
19 cpp_quote("")
20 cpp_quote("#ifndef __ActivDbg_h")
21 cpp_quote("#define __ActivDbg_h")
22
23 interface IActiveScriptDebug32;
24 interface IActiveScriptDebug64;
25 interface IActiveScriptErrorDebug;
26 interface IActiveScriptSiteDebug32;
27 interface IActiveScriptSiteDebug64;
28 interface IActiveScriptSiteDebugEx;
29 interface IActiveScriptTextInfo;
30 interface IApplicationDebugger;
31 interface IDebugApplication32;
32 interface IDebugApplication64;
33 interface IDebugApplicationNode;
34 interface IDebugApplicationNodeEvents;
35 interface IDebugApplicationThread;
36 interface IDebugAsyncOperation;
37 interface IDebugAsyncOperationCallBack;
38 interface IDebugCodeContext;
39 interface IDebugDocument;
40 interface IDebugDocumentContext;
41 interface IDebugDocumentHelper32;
42 interface IDebugDocumentHelper64;
43 interface IDebugDocumentHost;
44 interface IDebugDocumentInfo;
45 interface IDebugDocumentProvider;
46 interface IDebugDocumentText;
47 interface IDebugDocumentTextAuthor;
48 interface IDebugDocumentTextEvents;
49 interface IDebugExpression;
50 interface IDebugExpressionCallBack;
51 interface IDebugExpressionContext;
52 interface IDebugFormatter;
53 interface IDebugSessionProvider;
54 interface IDebugStackFrame;
55 interface IDebugStackFrameSniffer;
56 interface IDebugSyncOperation;
57 interface IDebugThreadCall32;
58 interface IDebugThreadCall64;
59 interface IEnumActiveScriptDebugs;
60 interface IEnumDebugApplicationNodes;
61 interface IEnumDebugCodeContexts;
62 interface IEnumDebugDocumentContexts;
63 interface IEnumDebugExpressionContexts;
64 interface IEnumDebugObjectBrowsers;
65 interface IEnumDebugStackFrames;
66 interface IEnumDebugStackFrames64;
67 interface IEnumRemoteDebugApplications;
68 interface IEnumRemoteDebugApplicationThreads;
69 interface IMachineDebugManager;
70 interface IMachineDebugManagerCookie;
71 interface IMachineDebugManagerEvents;
72 interface IProcessDebugManager;
73 interface IProvideExpressionContexts;
74 interface IRemoteDebugApplication;
75 interface IRemoteDebugApplicationThread;
76
77 typedef DWORD APPBREAKFLAGS;
78 typedef WORD SOURCE_TEXT_ATTR;
79 typedef DWORD TEXT_DOC_ATTR;
80
81 typedef enum tagBREAKPOINT_STATE {
82 BREAKPOINT_DELETED = 0,
83 BREAKPOINT_DISABLED = 1,
84 BREAKPOINT_ENABLED = 2
85 } BREAKPOINT_STATE;
86
87 typedef enum tagBREAKREASON {
88 BREAKREASON_STEP,
89 BREAKREASON_BREAKPOINT,
90 BREAKREASON_DEBUGGER_BLOCK,
91 BREAKREASON_HOST_INITIATED,
92 BREAKREASON_LANGUAGE_INITIATED,
93 BREAKREASON_DEBUGGER_HALT,
94 BREAKREASON_ERROR,
95 BREAKREASON_JIT
96 } BREAKREASON;
97
98 typedef enum tagBREAKRESUME_ACTION {
99 BREAKRESUMEACTION_ABORT,
100 BREAKRESUMEACTION_CONTINUE,
101 BREAKRESUMEACTION_STEP_INTO,
102 BREAKRESUMEACTION_STEP_OVER,
103 BREAKRESUMEACTION_STEP_OUT,
104 BREAKRESUMEACTION_IGNORE,
105 } BREAKRESUMEACTION;
106
107 typedef enum tagDOCUMENTNAMETYPE {
108 DOCUMENTNAMETYPE_APPNODE,
109 DOCUMENTNAMETYPE_TITLE,
110 DOCUMENTNAMETYPE_FILE_TAIL,
111 DOCUMENTNAMETYPE_URL,
112 DOCUMENTNAMETYPE_UNIQUE_TITLE,
113 } DOCUMENTNAMETYPE;
114
115 typedef enum tagERRORRESUMEACTION {
116 ERRORRESUMEACTION_ReexecuteErrorStatement,
117 ERRORRESUMEACTION_AbortCallAndReturnErrorToCaller,
118 ERRORRESUMEACTION_SkipErrorStatement,
119 } ERRORRESUMEACTION;
120
121 typedef struct tagDebugStackFrameDescriptor {
122 IDebugStackFrame *pdsf;
123 DWORD dwMin;
124 DWORD dwLim;
125 BOOL fFinal;
126 IUnknown *punkFinal;
127 } DebugStackFrameDescriptor;
128
129 typedef struct tagDebugStackFrameDescriptor64 {
130 IDebugStackFrame *pdsf;
131 DWORDLONG dwMin;
132 DWORDLONG dwLim;
133 BOOL fFinal;
134 IUnknown *punkFinal;
135 } DebugStackFrameDescriptor64;
136
137 const APPBREAKFLAGS APPBREAKFLAG_DEBUGGER_BLOCK = 0x00000001;
138 const APPBREAKFLAGS APPBREAKFLAG_DEBUGGER_HALT = 0x00000002;
139 const APPBREAKFLAGS APPBREAKFLAG_STEP = 0x00010000;
140 const APPBREAKFLAGS APPBREAKFLAG_NESTED = 0x00020000;
141 const APPBREAKFLAGS APPBREAKFLAG_STEPTYPE_SOURCE = 0x00000000;
142 const APPBREAKFLAGS APPBREAKFLAG_STEPTYPE_BYTECODE = 0x00100000;
143 const APPBREAKFLAGS APPBREAKFLAG_STEPTYPE_MACHINE = 0x00200000;
144 const APPBREAKFLAGS APPBREAKFLAG_STEPTYPE_MASK = 0x00f00000;
145 const APPBREAKFLAGS APPBREAKFLAG_IN_BREAKPOINT = 0x80000000;
146
147 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_KEYWORD = 0x1;
148 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_COMMENT = 0x2;
149 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_NONSOURCE = 0x4;
150 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_OPERATOR = 0x8;
151 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_NUMBER = 0x10;
152 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_STRING = 0x20;
153 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_FUNCTION_START = 0x40;
154
155 const TEXT_DOC_ATTR TEXT_DOC_ATTR_READONLY = 0x1;
156 const TEXT_DOC_ATTR TEXT_DOC_ATTR_TYPE_PRIMARY = 0x2;
157 const TEXT_DOC_ATTR TEXT_DOC_ATTR_TYPE_WORKER = 0x4;
158 const TEXT_DOC_ATTR TEXT_DOC_ATTR_TYPE_SCRIPT = 0x8;
159 cpp_quote("")
160 const DWORD DEBUG_TEXT_ISEXPRESSION = 0x1;
161 const DWORD DEBUG_TEXT_RETURNVALUE = 0x2;
162 const DWORD DEBUG_TEXT_NOSIDEEFFECTS = 0x4;
163 const DWORD DEBUG_TEXT_ALLOWBREAKPOINTS = 0x8;
164 const DWORD DEBUG_TEXT_ALLOWERRORREPORT = 0x10;
165 const DWORD DEBUG_TEXT_EVALUATETOCODECONTEXT = 0x20;
166
167 cpp_quote("#ifndef DISABLE_ACTIVDBG_INTERFACE_WRAPPERS")
168 cpp_quote("#ifdef _WIN64")
169 cpp_quote("#define IDebugApplication IDebugApplication64")
170 cpp_quote("#define IID_IDebugApplication IID_IDebugApplication64")
171 cpp_quote("#define IDebugThreadCall IDebugThreadCall64")
172 cpp_quote("#define IID_IDebugThreadCall IID_IDebugThreadCall64")
173 cpp_quote("#define SynchronousCallIntoThread SynchronousCallIntoThread64")
174 cpp_quote("#define IActiveScriptDebug IActiveScriptDebug64")
175 cpp_quote("#define IID_IActiveScriptDebug IID_IActiveScriptDebug64")
176 cpp_quote("#define IActiveScriptSiteDebug IActiveScriptSiteDebug64")
177 cpp_quote("#define IID_IActiveScriptSiteDebug IID_IActiveScriptSiteDebug64")
178 cpp_quote("#define IDebugStackFrameSnifferEx IDebugStackFrameSnifferEx64")
179 cpp_quote("#define IID_IDebugStackFrameSnifferEx IID_IDebugStackFrameSnifferEx64")
180 cpp_quote("#define EnumStackFramesEx EnumStackFramesEx64")
181 cpp_quote("#define IDebugDocumentHelper IDebugDocumentHelper64")
182 cpp_quote("#define IID_IDebugDocumentHelper IID_IDebugDocumentHelper64")
183 cpp_quote("#define IProcessDebugManager IProcessDebugManager64")
184 cpp_quote("#define IID_IProcessDebugManager IID_IProcessDebugManager64")
185 cpp_quote("#else")
186 cpp_quote("#define IDebugApplication IDebugApplication32")
187 cpp_quote("#define IID_IDebugApplication IID_IDebugApplication32")
188 cpp_quote("#define IDebugThreadCall IDebugThreadCall32")
189 cpp_quote("#define IID_IDebugThreadCall IID_IDebugThreadCall32")
190 cpp_quote("#define SynchronousCallIntoThread SynchronousCallIntoThread32")
191 cpp_quote("#define IActiveScriptDebug IActiveScriptDebug32")
192 cpp_quote("#define IID_IActiveScriptDebug IID_IActiveScriptDebug32")
193 cpp_quote("#define IActiveScriptSiteDebug IActiveScriptSiteDebug32")
194 cpp_quote("#define IID_IActiveScriptSiteDebug IID_IActiveScriptSiteDebug32")
195 cpp_quote("#define IDebugStackFrameSnifferEx IDebugStackFrameSnifferEx32")
196 cpp_quote("#define IID_IDebugStackFrameSnifferEx IID_IDebugStackFrameSnifferEx32")
197 cpp_quote("#define EnumStackFramesEx EnumStackFramesEx32")
198 cpp_quote("#define IDebugDocumentHelper IDebugDocumentHelper32")
199 cpp_quote("#define IID_IDebugDocumentHelper IID_IDebugDocumentHelper32")
200 cpp_quote("#define IProcessDebugManager IProcessDebugManager32")
201 cpp_quote("#define IID_IProcessDebugManager IID_IProcessDebugManager32")
202 cpp_quote("#endif")
203 cpp_quote("#endif")
204
205 cpp_quote("EXTERN_C const CLSID CLSID_DebugHelper;")
206 cpp_quote("EXTERN_C const CLSID CLSID_MachineDebugManager;")
207 cpp_quote("EXTERN_C const CLSID CLSID_ProcessDebugManager;")
208
209 [object, uuid (51973c10-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
210 interface IActiveScriptDebug32 : IUnknown {
211 HRESULT GetScriptTextAttributes ([in, size_is (uNumCodeChars)] LPCOLESTR pstrCode,[in] ULONG uNumCodeChars,[in] LPCOLESTR pstrDelimiter,[in] DWORD dwFlags,[in, out, size_is (uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
212 HRESULT GetScriptletTextAttributes ([in, size_is (uNumCodeChars)] LPCOLESTR pstrCode,[in] ULONG uNumCodeChars,[in] LPCOLESTR pstrDelimiter,[in] DWORD dwFlags,[in, out, size_is (uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
213 HRESULT EnumCodeContextsOfPosition ([in] DWORD dwSourceContext,[in] ULONG uCharacterOffset,[in] ULONG uNumChars,[out] IEnumDebugCodeContexts **ppescc);
214 }
215
216 [object, uuid (bc437e23-f5b8-47f4-bb79-7d1ce5483b86), pointer_default (unique)]
217 interface IActiveScriptDebug64 : IUnknown {
218 HRESULT GetScriptTextAttributes ([in, size_is (uNumCodeChars)] LPCOLESTR pstrCode,[in] ULONG uNumCodeChars,[in] LPCOLESTR pstrDelimiter,[in] DWORD dwFlags,[in, out, size_is (uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
219 HRESULT GetScriptletTextAttributes ([in, size_is (uNumCodeChars)] LPCOLESTR pstrCode,[in] ULONG uNumCodeChars,[in] LPCOLESTR pstrDelimiter,[in] DWORD dwFlags,[in, out, size_is (uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
220 HRESULT EnumCodeContextsOfPosition ([in] DWORDLONG dwSourceContext,[in] ULONG uCharacterOffset,[in] ULONG uNumChars,[out] IEnumDebugCodeContexts **ppescc);
221 }
222
223 [object, local, uuid (51973c11-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
224 interface IActiveScriptSiteDebug32 : IUnknown {
225 HRESULT GetDocumentContextFromPosition ([in] DWORD dwSourceContext,[in] ULONG uCharacterOffset,[in] ULONG uNumChars,[out] IDebugDocumentContext **ppsc);
226 HRESULT GetApplication ([out] IDebugApplication32 **ppda);
227 HRESULT GetRootApplicationNode ([out] IDebugApplicationNode **ppdanRoot);
228 HRESULT OnScriptErrorDebug ([in] IActiveScriptErrorDebug *pErrorDebug,[out] BOOL *pfEnterDebugger,[out] BOOL *pfCallOnScriptErrorWhenContinuing);
229 }
230
231 [object, local, uuid (d6b96b0a-7463-402c-92ac-89984226942f), pointer_default (unique)]
232 interface IActiveScriptSiteDebug64 : IUnknown {
233 HRESULT GetDocumentContextFromPosition ([in] DWORDLONG dwSourceContext,[in] ULONG uCharacterOffset,[in] ULONG uNumChars,[out] IDebugDocumentContext **ppsc);
234 HRESULT GetApplication ([out] IDebugApplication64 **ppda);
235 HRESULT GetRootApplicationNode ([out] IDebugApplicationNode **ppdanRoot);
236 HRESULT OnScriptErrorDebug ([in] IActiveScriptErrorDebug *pErrorDebug,[out] BOOL *pfEnterDebugger,[out] BOOL *pfCallOnScriptErrorWhenContinuing);
237 }
238
239 [object, local, uuid (BB722CCB-6ad2-41c6-b780-af9c03ee69f5), pointer_default (unique)]
240 interface IActiveScriptSiteDebugEx : IUnknown {
241 HRESULT OnCanNotJITScriptErrorDebug ([in] IActiveScriptErrorDebug *pErrorDebug,[out] BOOL *pfCallOnScriptErrorWhenContinuing);
242 }
243
244 [object, uuid (51973c12-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
245 interface IActiveScriptErrorDebug : IActiveScriptError {
246 HRESULT GetDocumentContext ([out] IDebugDocumentContext **ppssc);
247 HRESULT GetStackFrame ([out] IDebugStackFrame **ppdsf);
248 }
249
250 [object, uuid (51973c13-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
251 interface IDebugCodeContext : IUnknown {
252 HRESULT GetDocumentContext ([out] IDebugDocumentContext **ppsc);
253 HRESULT SetBreakPoint ([in] BREAKPOINT_STATE bps);
254 }
255
256 [object, uuid (51973c14-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
257 interface IDebugExpression : IUnknown {
258 HRESULT Start ([in] IDebugExpressionCallBack *pdecb);
259 HRESULT Abort (void);
260 HRESULT QueryIsComplete (void);
261 HRESULT GetResultAsString ([out] HRESULT *phrResult,[out] BSTR *pbstrResult);
262 HRESULT GetResultAsDebugProperty ([out] HRESULT *phrResult,[out] IDebugProperty **ppdp);
263 }
264
265 [object, uuid (51973c15-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
266 interface IDebugExpressionContext : IUnknown {
267 HRESULT ParseLanguageText ([in] LPCOLESTR pstrCode,[in] UINT nRadix,[in] LPCOLESTR pstrDelimiter,[in] DWORD dwFlags,[out] IDebugExpression **ppe);
268 HRESULT GetLanguageInfo ([out] BSTR *pbstrLanguageName,[out] GUID *pLanguageID);
269 }
270
271 [object, uuid (51973c16-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
272 interface IDebugExpressionCallBack : IUnknown {
273 HRESULT onComplete (void);
274 }
275
276 [object, uuid (51973c17-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
277 interface IDebugStackFrame : IUnknown {
278 HRESULT GetCodeContext ([out] IDebugCodeContext **ppcc);
279 HRESULT GetDescriptionString ([in] BOOL fLong,[out] BSTR *pbstrDescription);
280 HRESULT GetLanguageString ([in] BOOL fLong,[out] BSTR *pbstrLanguage);
281 HRESULT GetThread ([out] IDebugApplicationThread **ppat);
282 HRESULT GetDebugProperty ([out] IDebugProperty **ppDebugProp);
283 }
284
285 [object, uuid (51973c18-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
286 interface IDebugStackFrameSniffer : IUnknown {
287 HRESULT EnumStackFrames ([out] IEnumDebugStackFrames **ppedsf);
288 }
289
290 [object, uuid (51973c19-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
291 interface IDebugStackFrameSnifferEx32 : IDebugStackFrameSniffer {
292 HRESULT EnumStackFramesEx32 ([in] DWORD dwSpMin,[out] IEnumDebugStackFrames **ppedsf);
293 };
294
295 [object, uuid (8cd12af4-49c1-4d52-8d8a-c146f47581aa), pointer_default (unique)]
296 interface IDebugStackFrameSnifferEx64 : IDebugStackFrameSniffer {
297 HRESULT EnumStackFramesEx64 ([in] DWORDLONG dwSpMin,[out] IEnumDebugStackFrames64 **ppedsf);
298 };
299
300 [object, local, uuid (51973c1a-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
301 interface IDebugSyncOperation : IUnknown {
302 HRESULT GetTargetThread ([out] IDebugApplicationThread **ppatTarget);
303 HRESULT Execute ([out] IUnknown **ppunkResult);
304 HRESULT InProgressAbort (void);
305 }
306
307 [object, local, uuid (51973c1b-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
308 interface IDebugAsyncOperation : IUnknown {
309 HRESULT GetSyncDebugOperation ([out] IDebugSyncOperation **ppsdo);
310 HRESULT Start (IDebugAsyncOperationCallBack *padocb);
311 HRESULT Abort (void);
312 HRESULT QueryIsComplete (void);
313 HRESULT GetResult ([out] HRESULT *phrResult,[out] IUnknown **ppunkResult);
314 }
315
316 [object, local, uuid (51973c1c-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
317 interface IDebugAsyncOperationCallBack : IUnknown {
318 HRESULT onComplete (void);
319 }
320
321 [object, uuid (51973c1d-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
322 interface IEnumDebugCodeContexts : IUnknown {
323 [local] HRESULT __stdcall Next ([in] ULONG celt,[out] IDebugCodeContext **pscc,[out] ULONG *pceltFetched);
324 [call_as (Next)] HRESULT __stdcall RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]IDebugCodeContext **pscc,[out] ULONG *pceltFetched);
325 HRESULT Skip ([in] ULONG celt);
326 HRESULT Reset (void);
327 HRESULT Clone ([out] IEnumDebugCodeContexts **ppescc);
328 }
329
330 [object, uuid (51973c1e-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
331 interface IEnumDebugStackFrames : IUnknown {
332 [local] HRESULT __stdcall Next ([in] ULONG celt,[out] DebugStackFrameDescriptor *prgdsfd,[out] ULONG *pceltFetched);
333 [call_as (Next)] HRESULT __stdcall RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]DebugStackFrameDescriptor *prgdsfd,[out] ULONG *pceltFetched);
334 HRESULT Skip ([in] ULONG celt);
335 HRESULT Reset (void);
336 HRESULT Clone ([out] IEnumDebugStackFrames **ppedsf);
337 }
338
339 [object, uuid (0dc38853-c1b0-4176-a984-b298361027af), pointer_default (unique)]
340 interface IEnumDebugStackFrames64 : IEnumDebugStackFrames {
341 [local] HRESULT __stdcall Next64 ([in] ULONG celt,[out] DebugStackFrameDescriptor64 *prgdsfd,[out] ULONG *pceltFetched);
342 [call_as (Next64)] HRESULT __stdcall RemoteNext64 ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]DebugStackFrameDescriptor64 *prgdsfd,[out] ULONG *pceltFetched);
343 }
344
345 [object, uuid (51973c1f-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
346 interface IDebugDocumentInfo : IUnknown {
347 HRESULT GetName ([in] DOCUMENTNAMETYPE dnt,[out] BSTR *pbstrName);
348 HRESULT GetDocumentClassId ([out] CLSID *pclsidDocument);
349 }
350
351 [object, uuid (51973c20-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
352 interface IDebugDocumentProvider : IDebugDocumentInfo {
353 HRESULT GetDocument ([out] IDebugDocument **ppssd);
354 }
355
356 [object, uuid (51973c21-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
357 interface IDebugDocument : IDebugDocumentInfo {
358 }
359
360 [object, uuid (51973c22-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
361 interface IDebugDocumentText : IDebugDocument {
362 HRESULT GetDocumentAttributes ([out] TEXT_DOC_ATTR *ptextdocattr);
363 HRESULT GetSize ([out] ULONG *pcNumLines,[out] ULONG *pcNumChars);
364 HRESULT GetPositionOfLine ([in] ULONG cLineNumber,[out] ULONG *pcCharacterPosition);
365 HRESULT GetLineOfPosition ([in] ULONG cCharacterPosition,[out] ULONG *pcLineNumber,[out] ULONG *pcCharacterOffsetInLine);
366 HRESULT GetText ([in] ULONG cCharacterPosition,[in, out, length_is (*pcNumChars), size_is (cMaxChars)] WCHAR *pcharText,[in, out, length_is (*pcNumChars), size_is (cMaxChars), ptr] SOURCE_TEXT_ATTR *pstaTextAttr,[in, out] ULONG *pcNumChars,[in] ULONG cMaxChars);
367 HRESULT GetPositionOfContext ([in] IDebugDocumentContext *psc,[out] ULONG *pcCharacterPosition,[out] ULONG *cNumChars);
368 HRESULT GetContextOfPosition ([in] ULONG cCharacterPosition,[in] ULONG cNumChars,[out] IDebugDocumentContext **ppsc);
369 }
370
371 [object, uuid (51973c23-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
372 interface IDebugDocumentTextEvents : IUnknown {
373 HRESULT onDestroy (void);
374 HRESULT onInsertText ([in] ULONG cCharacterPosition,[in] ULONG cNumToInsert);
375 HRESULT onRemoveText ([in] ULONG cCharacterPosition,[in] ULONG cNumToRemove);
376 HRESULT onReplaceText ([in] ULONG cCharacterPosition,[in] ULONG cNumToReplace);
377 HRESULT onUpdateTextAttributes ([in] ULONG cCharacterPosition,[in] ULONG cNumToUpdate);
378 HRESULT onUpdateDocumentAttributes ([in] TEXT_DOC_ATTR textdocattr);
379 }
380
381 [object, uuid (51973c24-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
382 interface IDebugDocumentTextAuthor : IDebugDocumentText {
383 HRESULT InsertText ([in] ULONG cCharacterPosition,[in] ULONG cNumToInsert,[in, size_is (cNumToInsert)]OLECHAR pcharText[]);
384 HRESULT RemoveText ([in] ULONG cCharacterPosition,[in] ULONG cNumToRemove);
385 HRESULT ReplaceText ([in] ULONG cCharacterPosition,[in] ULONG cNumToReplace,[in, size_is (cNumToReplace)]OLECHAR pcharText[]);
386 }
387
388 [object, uuid (51973c25-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
389 interface IDebugDocumentTextExternalAuthor : IUnknown {
390 HRESULT GetPathName ([out] BSTR *pbstrLongName,[out] BOOL *pfIsOriginalFile);
391 HRESULT GetFileName ([out] BSTR *pbstrShortName);
392 HRESULT NotifyChanged ();
393 }
394
395 [object, uuid (51973c26-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
396 interface IDebugDocumentHelper32 : IUnknown {
397 HRESULT Init ([in] IDebugApplication32 *pda,[in, string] LPCOLESTR pszShortName,[in, string] LPCOLESTR pszLongName,[in] TEXT_DOC_ATTR docAttr);
398 HRESULT Attach ([in] IDebugDocumentHelper32 *pddhParent);
399 HRESULT Detach ();
400 HRESULT AddUnicodeText ([in, string] LPCOLESTR pszText);
401 HRESULT AddDBCSText ([in, string] LPCSTR pszText);
402 HRESULT SetDebugDocumentHost ([in] IDebugDocumentHost *pddh);
403 HRESULT AddDeferredText ([in] ULONG cChars,[in] DWORD dwTextStartCookie);
404 HRESULT DefineScriptBlock ([in] ULONG ulCharOffset,[in] ULONG cChars,[in] IActiveScript *pas,[in] BOOL fScriptlet,[out] DWORD *pdwSourceContext);
405 HRESULT SetDefaultTextAttr (SOURCE_TEXT_ATTR staTextAttr);
406 HRESULT SetTextAttributes ([in] ULONG ulCharOffset,[in] ULONG cChars,[in, length_is (cChars), size_is (cChars)]SOURCE_TEXT_ATTR *pstaTextAttr);
407 HRESULT SetLongName ([in, string] LPCOLESTR pszLongName);
408 HRESULT SetShortName ([in, string] LPCOLESTR pszShortName);
409 HRESULT SetDocumentAttr ([in] TEXT_DOC_ATTR pszAttributes);
410 HRESULT GetDebugApplicationNode ([out] IDebugApplicationNode **ppdan);
411 HRESULT GetScriptBlockInfo ([in] DWORD dwSourceContext,[out] IActiveScript **ppasd,[out] ULONG *piCharPos,[out] ULONG *pcChars);
412 HRESULT CreateDebugDocumentContext ([in] ULONG iCharPos,[in] ULONG cChars,[out] IDebugDocumentContext **ppddc);
413 HRESULT BringDocumentToTop ();
414 HRESULT BringDocumentContextToTop (IDebugDocumentContext *pddc);
415 };
416
417 [object, uuid (c4c7363c-20fd-47f9-bd82-4855e0150871), pointer_default (unique)]
418 interface IDebugDocumentHelper64 : IUnknown {
419 HRESULT Init ([in] IDebugApplication64 *pda,[in, string] LPCOLESTR pszShortName,[in, string] LPCOLESTR pszLongName,[in] TEXT_DOC_ATTR docAttr);
420 HRESULT Attach ([in] IDebugDocumentHelper64 *pddhParent);
421 HRESULT Detach ();
422 HRESULT AddUnicodeText ([in, string] LPCOLESTR pszText);
423 HRESULT AddDBCSText ([in, string] LPCSTR pszText);
424 HRESULT SetDebugDocumentHost ([in] IDebugDocumentHost *pddh);
425 HRESULT AddDeferredText ([in] ULONG cChars,[in] DWORD dwTextStartCookie);
426 HRESULT DefineScriptBlock ([in] ULONG ulCharOffset,[in] ULONG cChars,[in] IActiveScript *pas,[in] BOOL fScriptlet,[out] DWORDLONG *pdwSourceContext);
427 HRESULT SetDefaultTextAttr (SOURCE_TEXT_ATTR staTextAttr);
428 HRESULT SetTextAttributes ([in] ULONG ulCharOffset,[in] ULONG cChars,[in, length_is (cChars), size_is (cChars)]SOURCE_TEXT_ATTR *pstaTextAttr);
429 HRESULT SetLongName ([in, string] LPCOLESTR pszLongName);
430 HRESULT SetShortName ([in, string] LPCOLESTR pszShortName);
431 HRESULT SetDocumentAttr ([in] TEXT_DOC_ATTR pszAttributes);
432 HRESULT GetDebugApplicationNode ([out] IDebugApplicationNode **ppdan);
433 HRESULT GetScriptBlockInfo ([in] DWORDLONG dwSourceContext,[out] IActiveScript **ppasd,[out] ULONG *piCharPos,[out] ULONG *pcChars);
434 HRESULT CreateDebugDocumentContext ([in] ULONG iCharPos,[in] ULONG cChars,[out] IDebugDocumentContext **ppddc);
435 HRESULT BringDocumentToTop ();
436 HRESULT BringDocumentContextToTop (IDebugDocumentContext *pddc);
437 };
438
439 [object, uuid (51973c27-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
440 interface IDebugDocumentHost : IUnknown {
441 HRESULT GetDeferredText ([in] DWORD dwTextStartCookie,[in, out, length_is (*pcNumChars), size_is (cMaxChars)] WCHAR *pcharText,[in, out, length_is (*pcNumChars), size_is (cMaxChars)] SOURCE_TEXT_ATTR *pstaTextAttr,[in, out] ULONG *pcNumChars,[in] ULONG cMaxChars);
442 HRESULT GetScriptTextAttributes ([in, size_is (uNumCodeChars)] LPCOLESTR pstrCode,[in] ULONG uNumCodeChars,[in] LPCOLESTR pstrDelimiter,[in] DWORD dwFlags,[in, out, size_is (uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
443 HRESULT OnCreateDocumentContext ([out] IUnknown **ppunkOuter);
444 HRESULT GetPathName ([out] BSTR *pbstrLongName,[out] BOOL *pfIsOriginalFile);
445 HRESULT GetFileName ([out] BSTR *pbstrShortName);
446 HRESULT NotifyChanged ();
447 };
448
449 [object, uuid (51973c28-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
450 interface IDebugDocumentContext : IUnknown {
451 HRESULT GetDocument ([out] IDebugDocument **ppsd);
452 HRESULT EnumCodeContexts ([out] IEnumDebugCodeContexts **ppescc);
453 }
454
455 [object, uuid (51973c29-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
456 interface IDebugSessionProvider : IUnknown {
457 HRESULT StartDebugSession ([in] IRemoteDebugApplication *pda);
458 };
459
460 [object, uuid (51973c2a-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
461 interface IApplicationDebugger : IUnknown {
462 HRESULT QueryAlive (void);
463 HRESULT CreateInstanceAtDebugger ([in] REFCLSID rclsid,[in] IUnknown *pUnkOuter,[in] DWORD dwClsContext,[in] REFIID riid,[out, iid_is (riid)] IUnknown **ppvObject);
464 HRESULT onDebugOutput ([in] LPCOLESTR pstr);
465 HRESULT onHandleBreakPoint ([in] IRemoteDebugApplicationThread *prpt,[in] BREAKREASON br,[in] IActiveScriptErrorDebug *pError);
466 HRESULT onClose (void);
467 HRESULT onDebuggerEvent ([in] REFIID riid,[in] IUnknown *punk);
468 };
469
470 [object, uuid (51973c2b-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
471 interface IApplicationDebuggerUI : IUnknown {
472 HRESULT BringDocumentToTop ([in] IDebugDocumentText *pddt);
473 HRESULT BringDocumentContextToTop ([in] IDebugDocumentContext *pddc);
474 };
475
476 [object, uuid (51973c2c-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
477 interface IMachineDebugManager : IUnknown {
478 HRESULT AddApplication ([in] IRemoteDebugApplication *pda,[out] DWORD *pdwAppCookie);
479 HRESULT RemoveApplication ([in] DWORD dwAppCookie);
480 HRESULT EnumApplications ([out] IEnumRemoteDebugApplications **ppeda);
481 };
482
483 [object, uuid (51973c2d-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
484 interface IMachineDebugManagerCookie : IUnknown {
485 HRESULT AddApplication ([in] IRemoteDebugApplication *pda,[in] DWORD dwDebugAppCookie,[out] DWORD *pdwAppCookie);
486 HRESULT RemoveApplication ([in] DWORD dwDebugAppCookie,[in] DWORD dwAppCookie);
487 HRESULT EnumApplications ([out] IEnumRemoteDebugApplications **ppeda);
488 };
489
490 [object, uuid (51973c2e-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
491 interface IMachineDebugManagerEvents : IUnknown {
492 HRESULT onAddApplication ([in] IRemoteDebugApplication *pda,[in] DWORD dwAppCookie);
493 HRESULT onRemoveApplication ([in] IRemoteDebugApplication *pda,[in] DWORD dwAppCookie);
494 };
495
496 [object, local, uuid (51973c2f-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
497 interface IProcessDebugManager32 : IUnknown {
498 HRESULT CreateApplication ([out] IDebugApplication32 **ppda);
499 HRESULT GetDefaultApplication ([out] IDebugApplication32 **ppda);
500 HRESULT AddApplication ([in] IDebugApplication32 *pda,[out] DWORD *pdwAppCookie);
501 HRESULT RemoveApplication ([in] DWORD dwAppCookie);
502 HRESULT CreateDebugDocumentHelper ([in] IUnknown *punkOuter,[out] IDebugDocumentHelper32 **pddh);
503 };
504
505 [object, local, uuid (56b9fc1c-63a9-4cc1-ac21-087d69a17fab), pointer_default (unique)]
506 interface IProcessDebugManager64 : IUnknown {
507 HRESULT CreateApplication ([out] IDebugApplication64 **ppda);
508 HRESULT GetDefaultApplication ([out] IDebugApplication64 **ppda);
509 HRESULT AddApplication ([in] IDebugApplication64 *pda,[out] DWORD *pdwAppCookie);
510 HRESULT RemoveApplication ([in] DWORD dwAppCookie);
511 HRESULT CreateDebugDocumentHelper ([in] IUnknown *punkOuter,[out] IDebugDocumentHelper64 **pddh);
512 };
513
514 [object, uuid (51973c30-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
515 interface IRemoteDebugApplication : IUnknown {
516 HRESULT ResumeFromBreakPoint ([in] IRemoteDebugApplicationThread *prptFocus,[in] BREAKRESUMEACTION bra,[in] ERRORRESUMEACTION era);
517 HRESULT CauseBreak (void);
518 HRESULT ConnectDebugger ([in] IApplicationDebugger *pad);
519 HRESULT DisconnectDebugger (void);
520 HRESULT GetDebugger ([out] IApplicationDebugger **pad);
521 HRESULT CreateInstanceAtApplication ([in] REFCLSID rclsid,[in] IUnknown *pUnkOuter,[in] DWORD dwClsContext,[in] REFIID riid,[out, iid_is (riid)] IUnknown **ppvObject);
522 HRESULT QueryAlive (void);
523 HRESULT EnumThreads ([out] IEnumRemoteDebugApplicationThreads **pperdat);
524 HRESULT GetName ([out] BSTR *pbstrName);
525 HRESULT GetRootNode ([out] IDebugApplicationNode **ppdanRoot);
526 HRESULT EnumGlobalExpressionContexts ([out] IEnumDebugExpressionContexts **ppedec);
527 };
528
529 [object, local, uuid (51973c32-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
530 interface IDebugApplication32 : IRemoteDebugApplication {
531 HRESULT SetName ([in] LPCOLESTR pstrName);
532 HRESULT StepOutComplete (void);
533 HRESULT DebugOutput ([in] LPCOLESTR pstr);
534 HRESULT StartDebugSession (void);
535 HRESULT HandleBreakPoint ([in] BREAKREASON br,[out] BREAKRESUMEACTION *pbra);
536 HRESULT Close (void);
537 HRESULT GetBreakFlags ([out] APPBREAKFLAGS *pabf,[out] IRemoteDebugApplicationThread **pprdatSteppingThread);
538 HRESULT GetCurrentThread ([out] IDebugApplicationThread **pat);
539 HRESULT CreateAsyncDebugOperation ([in] IDebugSyncOperation *psdo,[out] IDebugAsyncOperation **ppado);
540 HRESULT AddStackFrameSniffer ([in] IDebugStackFrameSniffer *pdsfs,[out] DWORD *pdwCookie);
541 HRESULT RemoveStackFrameSniffer ([in] DWORD dwCookie);
542 HRESULT QueryCurrentThreadIsDebuggerThread (void);
543 HRESULT SynchronousCallInDebuggerThread ([in] IDebugThreadCall32 *pptc,[in] DWORD dwParam1,[in] DWORD dwParam2,[in] DWORD dwParam3);
544 HRESULT CreateApplicationNode ([out] IDebugApplicationNode **ppdanNew);
545 HRESULT FireDebuggerEvent ([in] REFGUID riid,[in] IUnknown *punk);
546 HRESULT HandleRuntimeError ([in] IActiveScriptErrorDebug *pErrorDebug,[in] IActiveScriptSite *pScriptSite,[out] BREAKRESUMEACTION *pbra,[out] ERRORRESUMEACTION *perra,[out] BOOL *pfCallOnScriptError);
547 BOOL FCanJitDebug ();
548 BOOL FIsAutoJitDebugEnabled ();
549 HRESULT AddGlobalExpressionContextProvider ([in] IProvideExpressionContexts *pdsfs,[out] DWORD *pdwCookie);
550 HRESULT RemoveGlobalExpressionContextProvider ([in] DWORD dwCookie);
551 }
552
553 [object, local, uuid (4dedc754-04c7-4f10-9e60-16a390fe6e62), pointer_default (unique)]
554 interface IDebugApplication64 : IRemoteDebugApplication {
555 HRESULT SetName ([in] LPCOLESTR pstrName);
556 HRESULT StepOutComplete (void);
557 HRESULT DebugOutput ([in] LPCOLESTR pstr);
558 HRESULT StartDebugSession (void);
559 HRESULT HandleBreakPoint ([in] BREAKREASON br,[out] BREAKRESUMEACTION *pbra);
560 HRESULT Close (void);
561 HRESULT GetBreakFlags ([out] APPBREAKFLAGS *pabf,[out] IRemoteDebugApplicationThread **pprdatSteppingThread);
562 HRESULT GetCurrentThread ([out] IDebugApplicationThread **pat);
563 HRESULT CreateAsyncDebugOperation ([in] IDebugSyncOperation *psdo,[out] IDebugAsyncOperation **ppado);
564 HRESULT AddStackFrameSniffer ([in] IDebugStackFrameSniffer *pdsfs,[out] DWORD *pdwCookie);
565 HRESULT RemoveStackFrameSniffer ([in] DWORD dwCookie);
566 HRESULT QueryCurrentThreadIsDebuggerThread (void);
567 HRESULT SynchronousCallInDebuggerThread ([in] IDebugThreadCall64 *pptc,[in] DWORDLONG dwParam1,[in] DWORDLONG dwParam2,[in] DWORDLONG dwParam3);
568 HRESULT CreateApplicationNode ([out] IDebugApplicationNode **ppdanNew);
569 HRESULT FireDebuggerEvent ([in] REFGUID riid,[in] IUnknown *punk);
570 HRESULT HandleRuntimeError ([in] IActiveScriptErrorDebug *pErrorDebug,[in] IActiveScriptSite *pScriptSite,[out] BREAKRESUMEACTION *pbra,[out] ERRORRESUMEACTION *perra,[out] BOOL *pfCallOnScriptError);
571 BOOL FCanJitDebug ();
572 BOOL FIsAutoJitDebugEnabled ();
573 HRESULT AddGlobalExpressionContextProvider ([in] IProvideExpressionContexts *pdsfs,[out] DWORDLONG *pdwCookie);
574 HRESULT RemoveGlobalExpressionContextProvider ([in] DWORDLONG dwCookie);
575 };
576
577 [object, uuid (51973c33-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
578 interface IRemoteDebugApplicationEvents : IUnknown {
579 HRESULT OnConnectDebugger ([in] IApplicationDebugger *pad);
580 HRESULT OnDisconnectDebugger (void);
581 HRESULT OnSetName ([in] LPCOLESTR pstrName);
582 HRESULT OnDebugOutput ([in] LPCOLESTR pstr);
583 HRESULT OnClose (void);
584 HRESULT OnEnterBreakPoint ([in] IRemoteDebugApplicationThread *prdat);
585 HRESULT OnLeaveBreakPoint ([in] IRemoteDebugApplicationThread *prdat);
586 HRESULT OnCreateThread ([in] IRemoteDebugApplicationThread *prdat);
587 HRESULT OnDestroyThread ([in] IRemoteDebugApplicationThread *prdat);
588 HRESULT OnBreakFlagChange ([in] APPBREAKFLAGS abf,[in] IRemoteDebugApplicationThread *prdatSteppingThread);
589 };
590
591 [object, uuid (51973c34-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
592 interface IDebugApplicationNode : IDebugDocumentProvider {
593 HRESULT EnumChildren ([out] IEnumDebugApplicationNodes **pperddp);
594 HRESULT GetParent ([out] IDebugApplicationNode **pprddp);
595 HRESULT SetDocumentProvider ([in] IDebugDocumentProvider *pddp);
596 HRESULT Close (void);
597 HRESULT Attach ([in] IDebugApplicationNode *pdanParent);
598 HRESULT Detach (void);
599 }
600
601 [object, uuid (51973c35-cb0c-11d0-b5c9-00a0244a0e7a), async_uuid (a2e3aa3b-aa8d-4ebf-84cd-648b737b8c13), pointer_default (unique)]
602 interface IDebugApplicationNodeEvents : IUnknown {
603 HRESULT onAddChild ([in] IDebugApplicationNode *prddpChild);
604 HRESULT onRemoveChild ([in] IDebugApplicationNode *prddpChild);
605 HRESULT onDetach (void);
606 HRESULT onAttach ([in] IDebugApplicationNode *prddpParent);
607 }
608
609 [object, local, uuid (51973c36-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
610 interface IDebugThreadCall32 : IUnknown {
611 HRESULT ThreadCallHandler ([in] DWORD dwParam1,[in] DWORD dwParam2,[in] DWORD dwParam3);
612 }
613
614 [object, local, uuid (cb3fa335-e979-42fd-9fcf-a7546a0f3905), pointer_default (unique)]
615 interface IDebugThreadCall64 : IUnknown {
616 HRESULT ThreadCallHandler ([in] DWORDLONG dwParam1,[in] DWORDLONG dwParam2,[in] DWORDLONG dwParam3);
617 }
618
619 [object, uuid (51973c37-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
620 interface IRemoteDebugApplicationThread : IUnknown {
621 typedef DWORD THREAD_STATE;
622
623 const THREAD_STATE THREAD_STATE_RUNNING = 0x1;
624 const THREAD_STATE THREAD_STATE_SUSPENDED = 0x2;
625 const THREAD_STATE THREAD_BLOCKED = 0x4;
626 const THREAD_STATE THREAD_OUT_OF_CONTEXT = 0x8;
627
628 HRESULT GetSystemThreadId ([out] DWORD *dwThreadId);
629 HRESULT GetApplication ([out] IRemoteDebugApplication **pprda);
630 HRESULT EnumStackFrames ([out] IEnumDebugStackFrames **ppedsf);
631 HRESULT GetDescription ([out] BSTR *pbstrDescription,[out] BSTR *pbstrState);
632 HRESULT SetNextStatement ([in] IDebugStackFrame *pStackFrame,[in] IDebugCodeContext *pCodeContext);
633 HRESULT GetState ([out] DWORD *pState);
634 HRESULT Suspend ([out] DWORD *pdwCount);
635 HRESULT Resume ([out] DWORD *pdwCount);
636 HRESULT GetSuspendCount ([out] DWORD *pdwCount);
637 }
638
639 [object, local, uuid (51973c38-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
640 interface IDebugApplicationThread : IRemoteDebugApplicationThread {
641 HRESULT SynchronousCallIntoThread32 ([in] IDebugThreadCall32 *pstcb,[in] DWORD dwParam1,[in] DWORD dwParam2,[in] DWORD dwParam3);
642 HRESULT QueryIsCurrentThread (void);
643 HRESULT QueryIsDebuggerThread (void);
644 HRESULT SetDescription ([in] LPCOLESTR pstrDescription);
645 HRESULT SetStateString ([in] LPCOLESTR pstrState);
646 }
647
648 [object, local, uuid (9dac5886-dbad-456d-9dee-5dec39ab3dda), pointer_default (unique)]
649 interface IDebugApplicationThread64 : IDebugApplicationThread {
650 HRESULT SynchronousCallIntoThread64 ([in] IDebugThreadCall64 *pstcb,[in] DWORDLONG dwParam1,[in] DWORDLONG dwParam2,[in] DWORDLONG dwParam3);
651 }
652
653 [object, local, uuid (51973c39-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
654 interface IDebugCookie : IUnknown {
655 HRESULT SetDebugCookie ([in]DWORD dwDebugAppCookie);
656 };
657
658 [object, uuid (51973c3a-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
659 interface IEnumDebugApplicationNodes : IUnknown {
660 [local] HRESULT __stdcall Next ([in] ULONG celt,[out] IDebugApplicationNode **pprddp,[out] ULONG *pceltFetched);
661 [call_as (Next)] HRESULT __stdcall RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]IDebugApplicationNode **pprddp,[out] ULONG *pceltFetched);
662 HRESULT Skip ([in] ULONG celt);
663 HRESULT Reset (void);
664 HRESULT Clone ([out] IEnumDebugApplicationNodes **pperddp);
665 };
666
667 [object, uuid (51973c3b-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
668 interface IEnumRemoteDebugApplications : IUnknown {
669 [local] HRESULT __stdcall Next ([in] ULONG celt,[out] IRemoteDebugApplication **ppda,[out] ULONG *pceltFetched);
670 [call_as (Next)] HRESULT __stdcall RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]IRemoteDebugApplication **ppda,[out] ULONG *pceltFetched);
671 HRESULT Skip ([in] ULONG celt);
672 HRESULT Reset (void);
673 HRESULT Clone ([out] IEnumRemoteDebugApplications **ppessd);
674 }
675
676 [object, uuid (51973c3c-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
677 interface IEnumRemoteDebugApplicationThreads : IUnknown {
678 [local] HRESULT __stdcall Next ([in] ULONG celt,[out] IRemoteDebugApplicationThread **pprdat,[out] ULONG *pceltFetched);
679 [call_as (Next)] HRESULT __stdcall RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]IRemoteDebugApplicationThread **ppdat,[out] ULONG *pceltFetched);
680 HRESULT Skip ([in] ULONG celt);
681 HRESULT Reset (void);
682 HRESULT Clone ([out] IEnumRemoteDebugApplicationThreads **pperdat);
683 }
684
685 [object, local, uuid (51973c05-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
686 interface IDebugFormatter : IUnknown {
687 HRESULT GetStringForVariant ([in] VARIANT *pvar,[in] ULONG nRadix,[out] BSTR *pbstrValue);
688 HRESULT GetVariantForString ([in] LPCOLESTR pwstrValue,[out] VARIANT *pvar);
689 HRESULT GetStringForVarType ([in] VARTYPE vt,[in] TYPEDESC *ptdescArrayType,[out] BSTR *pbstr);
690 }
691
692 [object, local, uuid (51973c3e-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
693 interface ISimpleConnectionPoint : IUnknown {
694 HRESULT GetEventCount ([out] ULONG *pulCount);
695 HRESULT DescribeEvents ([in] ULONG iEvent,[in] ULONG cEvents,[out, size_is (cEvents), length_is (*pcEventsFetched)]DISPID *prgid,[out, size_is (cEvents), length_is (*pcEventsFetched)]BSTR *prgbstr,[out] ULONG *pcEventsFetched);
696 HRESULT Advise ([in] IDispatch *pdisp,[out] DWORD *pdwCookie);
697 HRESULT Unadvise ([in] DWORD dwCookie);
698 };
699
700 [object, local, uuid (51973c3f-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
701 interface IDebugHelper : IUnknown {
702 HRESULT CreatePropertyBrowser ([in] VARIANT *pvar,[in] LPCOLESTR bstrName,[in] IDebugApplicationThread *pdat,[out] IDebugProperty **ppdob);
703 HRESULT CreatePropertyBrowserEx ([in] VARIANT *pvar,[in] LPCOLESTR bstrName,[in] IDebugApplicationThread *pdat,[in] IDebugFormatter *pdf,[out] IDebugProperty **ppdob);
704 HRESULT CreateSimpleConnectionPoint ([in] IDispatch *pdisp,[out] ISimpleConnectionPoint **ppscp);
705 };
706
707 [object, uuid (51973c40-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
708 interface IEnumDebugExpressionContexts : IUnknown {
709 [local] HRESULT __stdcall Next ([in] ULONG celt,[out] IDebugExpressionContext **ppdec,[out] ULONG *pceltFetched);
710 [call_as (Next)] HRESULT __stdcall RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]IDebugExpressionContext **pprgdec,[out] ULONG *pceltFetched);
711 HRESULT Skip ([in] ULONG celt);
712 HRESULT Reset (void);
713 HRESULT Clone ([out] IEnumDebugExpressionContexts **ppedec);
714 }
715
716 [object, uuid (51973c41-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
717 interface IProvideExpressionContexts : IUnknown {
718 HRESULT EnumExpressionContexts ([out] IEnumDebugExpressionContexts **ppedec);
719 }
720
721 [uuid (78a51821-51f4-11d0-8f20-00805f2cd064), version (1.0)]
722 library ProcessDebugManagerLib {
723 importlib ("stdole2.tlb");
724 interface IActiveScriptDebug32;
725 interface IActiveScriptDebug64;
726 interface IActiveScriptErrorDebug;
727 interface IActiveScriptSiteDebug32;
728 interface IActiveScriptSiteDebug64;
729 interface IActiveScriptSiteDebugEx;
730 interface IApplicationDebugger;
731 interface IApplicationDebuggerUI;
732 interface IDebugApplication32;
733 interface IDebugApplication64;
734 interface IDebugApplicationNode;
735 interface IDebugApplicationNodeEvents;
736 interface IDebugApplicationThread;
737 interface IDebugAsyncOperation;
738 interface IDebugAsyncOperationCallBack;
739 interface IDebugCodeContext;
740 interface IDebugCookie;
741 interface IDebugDocument;
742 interface IDebugDocumentContext;
743 interface IDebugDocumentHelper32;
744 interface IDebugDocumentHelper64;
745 interface IDebugDocumentHost;
746 interface IDebugDocumentInfo;
747 interface IDebugDocumentProvider;
748 interface IDebugDocumentText;
749 interface IDebugDocumentTextAuthor;
750 interface IDebugDocumentTextEvents;
751 interface IDebugDocumentTextExternalAuthor;
752 interface IDebugExpression;
753 interface IDebugExpressionCallBack;
754 interface IDebugExpressionContext;
755 interface IDebugFormatter;
756 interface IDebugHelper;
757 interface IDebugSessionProvider;
758 interface IDebugStackFrame;
759 interface IDebugStackFrameSniffer;
760 interface IDebugStackFrameSnifferEx32;
761 interface IDebugStackFrameSnifferEx64;
762 interface IDebugSyncOperation;
763 interface IDebugThreadCall32;
764 interface IDebugThreadCall64;
765 interface IEnumDebugApplicationNodes;
766 interface IEnumDebugCodeContexts;
767 interface IEnumDebugExpressionContexts;
768 interface IEnumDebugStackFrames;
769 interface IEnumDebugStackFrames64;
770 interface IEnumRemoteDebugApplications;
771 interface IEnumRemoteDebugApplicationThreads;
772 interface IProcessDebugManager32;
773 interface IProcessDebugManager64;
774 interface IProvideExpressionContexts;
775 interface IMachineDebugManager;
776 interface IMachineDebugManagerCookie;
777 interface IMachineDebugManagerEvents;
778 interface IRemoteDebugApplication;
779 interface IRemoteDebugApplicationEvents;
780 interface IRemoteDebugApplicationThread;
781 interface ISimpleConnectionPoint;
782 [uuid (78a51822-51f4-11d0-8f20-00805f2cd064)]
783 coclass ProcessDebugManager {
784 #ifdef _WIN64
785 [default] interface IProcessDebugManager64;
786 #else
787 [default] interface IProcessDebugManager32;
788 #endif
789 };
790 [uuid (0bfcc060-8c1d-11d0-ACCD-00aa0060275c)]
791 coclass DebugHelper {
792 [default] interface IDebugHelper;
793 };
794 cpp_quote("EXTERN_C const CLSID CLSID_CDebugDocumentHelper;")
795 [uuid (83b8bca6-687c-11d0-A405-00aa0060275c)]
796 coclass CDebugDocumentHelper {
797 #ifdef _WIN64
798 [default] interface IDebugDocumentHelper64;
799 #else
800 [default] interface IDebugDocumentHelper32;
801 #endif
802 interface IDebugDocumentProvider;
803 interface IDebugDocument;
804 interface IDebugDocumentText;
805 interface IDebugDocumentTextAuthor;
806 interface IConnectionPointContainer;
807 [default, source] interface IDebugDocumentTextEvents;
808 };
809 cpp_quote("#ifdef DEBUG")
810 cpp_quote("#define MachineDebugManger MachineDebugManager_DEBUG")
811 cpp_quote("#define CLSID_MachineDebugManager CLSID_MachineDebugManager_DEBUG")
812 cpp_quote("#else")
813 cpp_quote("#define MachineDebugManger MachineDebugManager_RETAIL")
814 cpp_quote("#define CLSID_MachineDebugManager CLSID_MachineDebugManager_RETAIL")
815 cpp_quote("#endif")
816 [uuid (0c0a3666-30c9-11d0-8f20-00805f2cd064)]
817 coclass MachineDebugManager_RETAIL {
818 [default] interface IMachineDebugManager;
819 };
820 [uuid (49769cec-3a55-4bb0-B697-88fede77e8ea)]
821 coclass MachineDebugManager_DEBUG {
822 [default] interface IMachineDebugManager;
823 };
824 [uuid (834128a2-51f4-11d0-8f20-00805f2cd064)]
825 coclass DefaultDebugSessionProvider {
826 [default] interface IDebugSessionProvider;
827 };
828 };
829 cpp_quote("#endif")
830 cpp_quote("#endif")