1 /*** Autogenerated by WIDL 6.4 from include/activdbg.idl - Do not edit ***/
2 
3 #ifdef _WIN32
4 #ifndef __REQUIRED_RPCNDR_H_VERSION__
5 #define __REQUIRED_RPCNDR_H_VERSION__ 475
6 #endif
7 #include <rpc.h>
8 #include <rpcndr.h>
9 #endif
10 
11 #ifndef COM_NO_WINDOWS_H
12 #include <windows.h>
13 #include <ole2.h>
14 #endif
15 
16 #ifndef __activdbg_h__
17 #define __activdbg_h__
18 
19 /* Forward declarations */
20 
21 #ifndef __IActiveScriptDebug32_FWD_DEFINED__
22 #define __IActiveScriptDebug32_FWD_DEFINED__
23 typedef interface IActiveScriptDebug32 IActiveScriptDebug32;
24 #ifdef __cplusplus
25 interface IActiveScriptDebug32;
26 #endif /* __cplusplus */
27 #endif
28 
29 #ifndef __IActiveScriptDebug64_FWD_DEFINED__
30 #define __IActiveScriptDebug64_FWD_DEFINED__
31 typedef interface IActiveScriptDebug64 IActiveScriptDebug64;
32 #ifdef __cplusplus
33 interface IActiveScriptDebug64;
34 #endif /* __cplusplus */
35 #endif
36 
37 #ifndef __IActiveScriptSiteDebug32_FWD_DEFINED__
38 #define __IActiveScriptSiteDebug32_FWD_DEFINED__
39 typedef interface IActiveScriptSiteDebug32 IActiveScriptSiteDebug32;
40 #ifdef __cplusplus
41 interface IActiveScriptSiteDebug32;
42 #endif /* __cplusplus */
43 #endif
44 
45 #ifndef __IActiveScriptSiteDebug64_FWD_DEFINED__
46 #define __IActiveScriptSiteDebug64_FWD_DEFINED__
47 typedef interface IActiveScriptSiteDebug64 IActiveScriptSiteDebug64;
48 #ifdef __cplusplus
49 interface IActiveScriptSiteDebug64;
50 #endif /* __cplusplus */
51 #endif
52 
53 #ifndef __IActiveScriptSiteDebugEx_FWD_DEFINED__
54 #define __IActiveScriptSiteDebugEx_FWD_DEFINED__
55 typedef interface IActiveScriptSiteDebugEx IActiveScriptSiteDebugEx;
56 #ifdef __cplusplus
57 interface IActiveScriptSiteDebugEx;
58 #endif /* __cplusplus */
59 #endif
60 
61 #ifndef __IActiveScriptErrorDebug_FWD_DEFINED__
62 #define __IActiveScriptErrorDebug_FWD_DEFINED__
63 typedef interface IActiveScriptErrorDebug IActiveScriptErrorDebug;
64 #ifdef __cplusplus
65 interface IActiveScriptErrorDebug;
66 #endif /* __cplusplus */
67 #endif
68 
69 #ifndef __IDebugCodeContext_FWD_DEFINED__
70 #define __IDebugCodeContext_FWD_DEFINED__
71 typedef interface IDebugCodeContext IDebugCodeContext;
72 #ifdef __cplusplus
73 interface IDebugCodeContext;
74 #endif /* __cplusplus */
75 #endif
76 
77 #ifndef __IDebugExpression_FWD_DEFINED__
78 #define __IDebugExpression_FWD_DEFINED__
79 typedef interface IDebugExpression IDebugExpression;
80 #ifdef __cplusplus
81 interface IDebugExpression;
82 #endif /* __cplusplus */
83 #endif
84 
85 #ifndef __IDebugExpressionContext_FWD_DEFINED__
86 #define __IDebugExpressionContext_FWD_DEFINED__
87 typedef interface IDebugExpressionContext IDebugExpressionContext;
88 #ifdef __cplusplus
89 interface IDebugExpressionContext;
90 #endif /* __cplusplus */
91 #endif
92 
93 #ifndef __IDebugExpressionCallBack_FWD_DEFINED__
94 #define __IDebugExpressionCallBack_FWD_DEFINED__
95 typedef interface IDebugExpressionCallBack IDebugExpressionCallBack;
96 #ifdef __cplusplus
97 interface IDebugExpressionCallBack;
98 #endif /* __cplusplus */
99 #endif
100 
101 #ifndef __IDebugStackFrame_FWD_DEFINED__
102 #define __IDebugStackFrame_FWD_DEFINED__
103 typedef interface IDebugStackFrame IDebugStackFrame;
104 #ifdef __cplusplus
105 interface IDebugStackFrame;
106 #endif /* __cplusplus */
107 #endif
108 
109 #ifndef __IDebugStackFrameSniffer_FWD_DEFINED__
110 #define __IDebugStackFrameSniffer_FWD_DEFINED__
111 typedef interface IDebugStackFrameSniffer IDebugStackFrameSniffer;
112 #ifdef __cplusplus
113 interface IDebugStackFrameSniffer;
114 #endif /* __cplusplus */
115 #endif
116 
117 #ifndef __IDebugStackFrameSnifferEx32_FWD_DEFINED__
118 #define __IDebugStackFrameSnifferEx32_FWD_DEFINED__
119 typedef interface IDebugStackFrameSnifferEx32 IDebugStackFrameSnifferEx32;
120 #ifdef __cplusplus
121 interface IDebugStackFrameSnifferEx32;
122 #endif /* __cplusplus */
123 #endif
124 
125 #ifndef __IDebugStackFrameSnifferEx64_FWD_DEFINED__
126 #define __IDebugStackFrameSnifferEx64_FWD_DEFINED__
127 typedef interface IDebugStackFrameSnifferEx64 IDebugStackFrameSnifferEx64;
128 #ifdef __cplusplus
129 interface IDebugStackFrameSnifferEx64;
130 #endif /* __cplusplus */
131 #endif
132 
133 #ifndef __IDebugSyncOperation_FWD_DEFINED__
134 #define __IDebugSyncOperation_FWD_DEFINED__
135 typedef interface IDebugSyncOperation IDebugSyncOperation;
136 #ifdef __cplusplus
137 interface IDebugSyncOperation;
138 #endif /* __cplusplus */
139 #endif
140 
141 #ifndef __IDebugAsyncOperation_FWD_DEFINED__
142 #define __IDebugAsyncOperation_FWD_DEFINED__
143 typedef interface IDebugAsyncOperation IDebugAsyncOperation;
144 #ifdef __cplusplus
145 interface IDebugAsyncOperation;
146 #endif /* __cplusplus */
147 #endif
148 
149 #ifndef __IDebugAsyncOperationCallBack_FWD_DEFINED__
150 #define __IDebugAsyncOperationCallBack_FWD_DEFINED__
151 typedef interface IDebugAsyncOperationCallBack IDebugAsyncOperationCallBack;
152 #ifdef __cplusplus
153 interface IDebugAsyncOperationCallBack;
154 #endif /* __cplusplus */
155 #endif
156 
157 #ifndef __IEnumDebugCodeContexts_FWD_DEFINED__
158 #define __IEnumDebugCodeContexts_FWD_DEFINED__
159 typedef interface IEnumDebugCodeContexts IEnumDebugCodeContexts;
160 #ifdef __cplusplus
161 interface IEnumDebugCodeContexts;
162 #endif /* __cplusplus */
163 #endif
164 
165 #ifndef __IEnumDebugStackFrames_FWD_DEFINED__
166 #define __IEnumDebugStackFrames_FWD_DEFINED__
167 typedef interface IEnumDebugStackFrames IEnumDebugStackFrames;
168 #ifdef __cplusplus
169 interface IEnumDebugStackFrames;
170 #endif /* __cplusplus */
171 #endif
172 
173 #ifndef __IEnumDebugStackFrames64_FWD_DEFINED__
174 #define __IEnumDebugStackFrames64_FWD_DEFINED__
175 typedef interface IEnumDebugStackFrames64 IEnumDebugStackFrames64;
176 #ifdef __cplusplus
177 interface IEnumDebugStackFrames64;
178 #endif /* __cplusplus */
179 #endif
180 
181 #ifndef __IDebugDocumentInfo_FWD_DEFINED__
182 #define __IDebugDocumentInfo_FWD_DEFINED__
183 typedef interface IDebugDocumentInfo IDebugDocumentInfo;
184 #ifdef __cplusplus
185 interface IDebugDocumentInfo;
186 #endif /* __cplusplus */
187 #endif
188 
189 #ifndef __IDebugDocumentProvider_FWD_DEFINED__
190 #define __IDebugDocumentProvider_FWD_DEFINED__
191 typedef interface IDebugDocumentProvider IDebugDocumentProvider;
192 #ifdef __cplusplus
193 interface IDebugDocumentProvider;
194 #endif /* __cplusplus */
195 #endif
196 
197 #ifndef __IDebugDocument_FWD_DEFINED__
198 #define __IDebugDocument_FWD_DEFINED__
199 typedef interface IDebugDocument IDebugDocument;
200 #ifdef __cplusplus
201 interface IDebugDocument;
202 #endif /* __cplusplus */
203 #endif
204 
205 #ifndef __IDebugDocumentText_FWD_DEFINED__
206 #define __IDebugDocumentText_FWD_DEFINED__
207 typedef interface IDebugDocumentText IDebugDocumentText;
208 #ifdef __cplusplus
209 interface IDebugDocumentText;
210 #endif /* __cplusplus */
211 #endif
212 
213 #ifndef __IDebugDocumentTextEvents_FWD_DEFINED__
214 #define __IDebugDocumentTextEvents_FWD_DEFINED__
215 typedef interface IDebugDocumentTextEvents IDebugDocumentTextEvents;
216 #ifdef __cplusplus
217 interface IDebugDocumentTextEvents;
218 #endif /* __cplusplus */
219 #endif
220 
221 #ifndef __IDebugDocumentTextAuthor_FWD_DEFINED__
222 #define __IDebugDocumentTextAuthor_FWD_DEFINED__
223 typedef interface IDebugDocumentTextAuthor IDebugDocumentTextAuthor;
224 #ifdef __cplusplus
225 interface IDebugDocumentTextAuthor;
226 #endif /* __cplusplus */
227 #endif
228 
229 #ifndef __IDebugDocumentTextExternalAuthor_FWD_DEFINED__
230 #define __IDebugDocumentTextExternalAuthor_FWD_DEFINED__
231 typedef interface IDebugDocumentTextExternalAuthor IDebugDocumentTextExternalAuthor;
232 #ifdef __cplusplus
233 interface IDebugDocumentTextExternalAuthor;
234 #endif /* __cplusplus */
235 #endif
236 
237 #ifndef __IDebugDocumentHelper32_FWD_DEFINED__
238 #define __IDebugDocumentHelper32_FWD_DEFINED__
239 typedef interface IDebugDocumentHelper32 IDebugDocumentHelper32;
240 #ifdef __cplusplus
241 interface IDebugDocumentHelper32;
242 #endif /* __cplusplus */
243 #endif
244 
245 #ifndef __IDebugDocumentHelper64_FWD_DEFINED__
246 #define __IDebugDocumentHelper64_FWD_DEFINED__
247 typedef interface IDebugDocumentHelper64 IDebugDocumentHelper64;
248 #ifdef __cplusplus
249 interface IDebugDocumentHelper64;
250 #endif /* __cplusplus */
251 #endif
252 
253 #ifndef __IDebugDocumentHost_FWD_DEFINED__
254 #define __IDebugDocumentHost_FWD_DEFINED__
255 typedef interface IDebugDocumentHost IDebugDocumentHost;
256 #ifdef __cplusplus
257 interface IDebugDocumentHost;
258 #endif /* __cplusplus */
259 #endif
260 
261 #ifndef __IDebugDocumentContext_FWD_DEFINED__
262 #define __IDebugDocumentContext_FWD_DEFINED__
263 typedef interface IDebugDocumentContext IDebugDocumentContext;
264 #ifdef __cplusplus
265 interface IDebugDocumentContext;
266 #endif /* __cplusplus */
267 #endif
268 
269 #ifndef __IDebugSessionProvider_FWD_DEFINED__
270 #define __IDebugSessionProvider_FWD_DEFINED__
271 typedef interface IDebugSessionProvider IDebugSessionProvider;
272 #ifdef __cplusplus
273 interface IDebugSessionProvider;
274 #endif /* __cplusplus */
275 #endif
276 
277 #ifndef __IApplicationDebugger_FWD_DEFINED__
278 #define __IApplicationDebugger_FWD_DEFINED__
279 typedef interface IApplicationDebugger IApplicationDebugger;
280 #ifdef __cplusplus
281 interface IApplicationDebugger;
282 #endif /* __cplusplus */
283 #endif
284 
285 #ifndef __IApplicationDebuggerUI_FWD_DEFINED__
286 #define __IApplicationDebuggerUI_FWD_DEFINED__
287 typedef interface IApplicationDebuggerUI IApplicationDebuggerUI;
288 #ifdef __cplusplus
289 interface IApplicationDebuggerUI;
290 #endif /* __cplusplus */
291 #endif
292 
293 #ifndef __IMachineDebugManager_FWD_DEFINED__
294 #define __IMachineDebugManager_FWD_DEFINED__
295 typedef interface IMachineDebugManager IMachineDebugManager;
296 #ifdef __cplusplus
297 interface IMachineDebugManager;
298 #endif /* __cplusplus */
299 #endif
300 
301 #ifndef __IMachineDebugManagerCookie_FWD_DEFINED__
302 #define __IMachineDebugManagerCookie_FWD_DEFINED__
303 typedef interface IMachineDebugManagerCookie IMachineDebugManagerCookie;
304 #ifdef __cplusplus
305 interface IMachineDebugManagerCookie;
306 #endif /* __cplusplus */
307 #endif
308 
309 #ifndef __IMachineDebugManagerEvents_FWD_DEFINED__
310 #define __IMachineDebugManagerEvents_FWD_DEFINED__
311 typedef interface IMachineDebugManagerEvents IMachineDebugManagerEvents;
312 #ifdef __cplusplus
313 interface IMachineDebugManagerEvents;
314 #endif /* __cplusplus */
315 #endif
316 
317 #ifndef __IProcessDebugManager32_FWD_DEFINED__
318 #define __IProcessDebugManager32_FWD_DEFINED__
319 typedef interface IProcessDebugManager32 IProcessDebugManager32;
320 #ifdef __cplusplus
321 interface IProcessDebugManager32;
322 #endif /* __cplusplus */
323 #endif
324 
325 #ifndef __IProcessDebugManager64_FWD_DEFINED__
326 #define __IProcessDebugManager64_FWD_DEFINED__
327 typedef interface IProcessDebugManager64 IProcessDebugManager64;
328 #ifdef __cplusplus
329 interface IProcessDebugManager64;
330 #endif /* __cplusplus */
331 #endif
332 
333 #ifndef __IRemoteDebugApplication_FWD_DEFINED__
334 #define __IRemoteDebugApplication_FWD_DEFINED__
335 typedef interface IRemoteDebugApplication IRemoteDebugApplication;
336 #ifdef __cplusplus
337 interface IRemoteDebugApplication;
338 #endif /* __cplusplus */
339 #endif
340 
341 #ifndef __IDebugApplication32_FWD_DEFINED__
342 #define __IDebugApplication32_FWD_DEFINED__
343 typedef interface IDebugApplication32 IDebugApplication32;
344 #ifdef __cplusplus
345 interface IDebugApplication32;
346 #endif /* __cplusplus */
347 #endif
348 
349 #ifndef __IDebugApplication64_FWD_DEFINED__
350 #define __IDebugApplication64_FWD_DEFINED__
351 typedef interface IDebugApplication64 IDebugApplication64;
352 #ifdef __cplusplus
353 interface IDebugApplication64;
354 #endif /* __cplusplus */
355 #endif
356 
357 #ifndef __IRemoteDebugApplicationEvents_FWD_DEFINED__
358 #define __IRemoteDebugApplicationEvents_FWD_DEFINED__
359 typedef interface IRemoteDebugApplicationEvents IRemoteDebugApplicationEvents;
360 #ifdef __cplusplus
361 interface IRemoteDebugApplicationEvents;
362 #endif /* __cplusplus */
363 #endif
364 
365 #ifndef __IDebugApplicationNode_FWD_DEFINED__
366 #define __IDebugApplicationNode_FWD_DEFINED__
367 typedef interface IDebugApplicationNode IDebugApplicationNode;
368 #ifdef __cplusplus
369 interface IDebugApplicationNode;
370 #endif /* __cplusplus */
371 #endif
372 
373 #ifndef __IDebugApplicationNodeEvents_FWD_DEFINED__
374 #define __IDebugApplicationNodeEvents_FWD_DEFINED__
375 typedef interface IDebugApplicationNodeEvents IDebugApplicationNodeEvents;
376 #ifdef __cplusplus
377 interface IDebugApplicationNodeEvents;
378 #endif /* __cplusplus */
379 #endif
380 
381 #ifndef __AsyncIDebugApplicationNodeEvents_FWD_DEFINED__
382 #define __AsyncIDebugApplicationNodeEvents_FWD_DEFINED__
383 typedef interface AsyncIDebugApplicationNodeEvents AsyncIDebugApplicationNodeEvents;
384 #ifdef __cplusplus
385 interface AsyncIDebugApplicationNodeEvents;
386 #endif /* __cplusplus */
387 #endif
388 
389 #ifndef __IDebugThreadCall32_FWD_DEFINED__
390 #define __IDebugThreadCall32_FWD_DEFINED__
391 typedef interface IDebugThreadCall32 IDebugThreadCall32;
392 #ifdef __cplusplus
393 interface IDebugThreadCall32;
394 #endif /* __cplusplus */
395 #endif
396 
397 #ifndef __IDebugThreadCall64_FWD_DEFINED__
398 #define __IDebugThreadCall64_FWD_DEFINED__
399 typedef interface IDebugThreadCall64 IDebugThreadCall64;
400 #ifdef __cplusplus
401 interface IDebugThreadCall64;
402 #endif /* __cplusplus */
403 #endif
404 
405 #ifndef __IRemoteDebugApplicationThread_FWD_DEFINED__
406 #define __IRemoteDebugApplicationThread_FWD_DEFINED__
407 typedef interface IRemoteDebugApplicationThread IRemoteDebugApplicationThread;
408 #ifdef __cplusplus
409 interface IRemoteDebugApplicationThread;
410 #endif /* __cplusplus */
411 #endif
412 
413 #ifndef __IDebugApplicationThread_FWD_DEFINED__
414 #define __IDebugApplicationThread_FWD_DEFINED__
415 typedef interface IDebugApplicationThread IDebugApplicationThread;
416 #ifdef __cplusplus
417 interface IDebugApplicationThread;
418 #endif /* __cplusplus */
419 #endif
420 
421 #ifndef __IDebugApplicationThread64_FWD_DEFINED__
422 #define __IDebugApplicationThread64_FWD_DEFINED__
423 typedef interface IDebugApplicationThread64 IDebugApplicationThread64;
424 #ifdef __cplusplus
425 interface IDebugApplicationThread64;
426 #endif /* __cplusplus */
427 #endif
428 
429 #ifndef __IDebugCookie_FWD_DEFINED__
430 #define __IDebugCookie_FWD_DEFINED__
431 typedef interface IDebugCookie IDebugCookie;
432 #ifdef __cplusplus
433 interface IDebugCookie;
434 #endif /* __cplusplus */
435 #endif
436 
437 #ifndef __IEnumDebugApplicationNodes_FWD_DEFINED__
438 #define __IEnumDebugApplicationNodes_FWD_DEFINED__
439 typedef interface IEnumDebugApplicationNodes IEnumDebugApplicationNodes;
440 #ifdef __cplusplus
441 interface IEnumDebugApplicationNodes;
442 #endif /* __cplusplus */
443 #endif
444 
445 #ifndef __IEnumRemoteDebugApplications_FWD_DEFINED__
446 #define __IEnumRemoteDebugApplications_FWD_DEFINED__
447 typedef interface IEnumRemoteDebugApplications IEnumRemoteDebugApplications;
448 #ifdef __cplusplus
449 interface IEnumRemoteDebugApplications;
450 #endif /* __cplusplus */
451 #endif
452 
453 #ifndef __IEnumRemoteDebugApplicationThreads_FWD_DEFINED__
454 #define __IEnumRemoteDebugApplicationThreads_FWD_DEFINED__
455 typedef interface IEnumRemoteDebugApplicationThreads IEnumRemoteDebugApplicationThreads;
456 #ifdef __cplusplus
457 interface IEnumRemoteDebugApplicationThreads;
458 #endif /* __cplusplus */
459 #endif
460 
461 #ifndef __IDebugFormatter_FWD_DEFINED__
462 #define __IDebugFormatter_FWD_DEFINED__
463 typedef interface IDebugFormatter IDebugFormatter;
464 #ifdef __cplusplus
465 interface IDebugFormatter;
466 #endif /* __cplusplus */
467 #endif
468 
469 #ifndef __ISimpleConnectionPoint_FWD_DEFINED__
470 #define __ISimpleConnectionPoint_FWD_DEFINED__
471 typedef interface ISimpleConnectionPoint ISimpleConnectionPoint;
472 #ifdef __cplusplus
473 interface ISimpleConnectionPoint;
474 #endif /* __cplusplus */
475 #endif
476 
477 #ifndef __IDebugHelper_FWD_DEFINED__
478 #define __IDebugHelper_FWD_DEFINED__
479 typedef interface IDebugHelper IDebugHelper;
480 #ifdef __cplusplus
481 interface IDebugHelper;
482 #endif /* __cplusplus */
483 #endif
484 
485 #ifndef __IEnumDebugExpressionContexts_FWD_DEFINED__
486 #define __IEnumDebugExpressionContexts_FWD_DEFINED__
487 typedef interface IEnumDebugExpressionContexts IEnumDebugExpressionContexts;
488 #ifdef __cplusplus
489 interface IEnumDebugExpressionContexts;
490 #endif /* __cplusplus */
491 #endif
492 
493 #ifndef __IProvideExpressionContexts_FWD_DEFINED__
494 #define __IProvideExpressionContexts_FWD_DEFINED__
495 typedef interface IProvideExpressionContexts IProvideExpressionContexts;
496 #ifdef __cplusplus
497 interface IProvideExpressionContexts;
498 #endif /* __cplusplus */
499 #endif
500 
501 #ifndef __ProcessDebugManager_FWD_DEFINED__
502 #define __ProcessDebugManager_FWD_DEFINED__
503 #ifdef __cplusplus
504 typedef class ProcessDebugManager ProcessDebugManager;
505 #else
506 typedef struct ProcessDebugManager ProcessDebugManager;
507 #endif /* defined __cplusplus */
508 #endif /* defined __ProcessDebugManager_FWD_DEFINED__ */
509 
510 #ifndef __DebugHelper_FWD_DEFINED__
511 #define __DebugHelper_FWD_DEFINED__
512 #ifdef __cplusplus
513 typedef class DebugHelper DebugHelper;
514 #else
515 typedef struct DebugHelper DebugHelper;
516 #endif /* defined __cplusplus */
517 #endif /* defined __DebugHelper_FWD_DEFINED__ */
518 
519 #ifndef __CDebugDocumentHelper_FWD_DEFINED__
520 #define __CDebugDocumentHelper_FWD_DEFINED__
521 #ifdef __cplusplus
522 typedef class CDebugDocumentHelper CDebugDocumentHelper;
523 #else
524 typedef struct CDebugDocumentHelper CDebugDocumentHelper;
525 #endif /* defined __cplusplus */
526 #endif /* defined __CDebugDocumentHelper_FWD_DEFINED__ */
527 
528 #ifndef __MachineDebugManager_RETAIL_FWD_DEFINED__
529 #define __MachineDebugManager_RETAIL_FWD_DEFINED__
530 #ifdef __cplusplus
531 typedef class MachineDebugManager_RETAIL MachineDebugManager_RETAIL;
532 #else
533 typedef struct MachineDebugManager_RETAIL MachineDebugManager_RETAIL;
534 #endif /* defined __cplusplus */
535 #endif /* defined __MachineDebugManager_RETAIL_FWD_DEFINED__ */
536 
537 #ifndef __MachineDebugManager_DEBUG_FWD_DEFINED__
538 #define __MachineDebugManager_DEBUG_FWD_DEFINED__
539 #ifdef __cplusplus
540 typedef class MachineDebugManager_DEBUG MachineDebugManager_DEBUG;
541 #else
542 typedef struct MachineDebugManager_DEBUG MachineDebugManager_DEBUG;
543 #endif /* defined __cplusplus */
544 #endif /* defined __MachineDebugManager_DEBUG_FWD_DEFINED__ */
545 
546 #ifndef __DefaultDebugSessionProvider_FWD_DEFINED__
547 #define __DefaultDebugSessionProvider_FWD_DEFINED__
548 #ifdef __cplusplus
549 typedef class DefaultDebugSessionProvider DefaultDebugSessionProvider;
550 #else
551 typedef struct DefaultDebugSessionProvider DefaultDebugSessionProvider;
552 #endif /* defined __cplusplus */
553 #endif /* defined __DefaultDebugSessionProvider_FWD_DEFINED__ */
554 
555 /* Headers for imported files */
556 
557 #include <ocidl.h>
558 #include <oleidl.h>
559 #include <oaidl.h>
560 #include <activscp.h>
561 #include <dbgprop.h>
562 
563 #ifdef __cplusplus
564 extern "C" {
565 #endif
566 
567 #include <winapifamily.h>
568 
569 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
570 
571 #ifndef __ActivDbg_h
572 #define __ActivDbg_h
573 #ifndef __IActiveScriptDebug32_FWD_DEFINED__
574 #define __IActiveScriptDebug32_FWD_DEFINED__
575 typedef interface IActiveScriptDebug32 IActiveScriptDebug32;
576 #ifdef __cplusplus
577 interface IActiveScriptDebug32;
578 #endif /* __cplusplus */
579 #endif
580 
581 #ifndef __IActiveScriptDebug64_FWD_DEFINED__
582 #define __IActiveScriptDebug64_FWD_DEFINED__
583 typedef interface IActiveScriptDebug64 IActiveScriptDebug64;
584 #ifdef __cplusplus
585 interface IActiveScriptDebug64;
586 #endif /* __cplusplus */
587 #endif
588 
589 #ifndef __IActiveScriptErrorDebug_FWD_DEFINED__
590 #define __IActiveScriptErrorDebug_FWD_DEFINED__
591 typedef interface IActiveScriptErrorDebug IActiveScriptErrorDebug;
592 #ifdef __cplusplus
593 interface IActiveScriptErrorDebug;
594 #endif /* __cplusplus */
595 #endif
596 
597 #ifndef __IActiveScriptSiteDebug32_FWD_DEFINED__
598 #define __IActiveScriptSiteDebug32_FWD_DEFINED__
599 typedef interface IActiveScriptSiteDebug32 IActiveScriptSiteDebug32;
600 #ifdef __cplusplus
601 interface IActiveScriptSiteDebug32;
602 #endif /* __cplusplus */
603 #endif
604 
605 #ifndef __IActiveScriptSiteDebug64_FWD_DEFINED__
606 #define __IActiveScriptSiteDebug64_FWD_DEFINED__
607 typedef interface IActiveScriptSiteDebug64 IActiveScriptSiteDebug64;
608 #ifdef __cplusplus
609 interface IActiveScriptSiteDebug64;
610 #endif /* __cplusplus */
611 #endif
612 
613 #ifndef __IActiveScriptSiteDebugEx_FWD_DEFINED__
614 #define __IActiveScriptSiteDebugEx_FWD_DEFINED__
615 typedef interface IActiveScriptSiteDebugEx IActiveScriptSiteDebugEx;
616 #ifdef __cplusplus
617 interface IActiveScriptSiteDebugEx;
618 #endif /* __cplusplus */
619 #endif
620 
621 #ifndef __IActiveScriptTextInfo_FWD_DEFINED__
622 #define __IActiveScriptTextInfo_FWD_DEFINED__
623 typedef interface IActiveScriptTextInfo IActiveScriptTextInfo;
624 #ifdef __cplusplus
625 interface IActiveScriptTextInfo;
626 #endif /* __cplusplus */
627 #endif
628 
629 #ifndef __IApplicationDebugger_FWD_DEFINED__
630 #define __IApplicationDebugger_FWD_DEFINED__
631 typedef interface IApplicationDebugger IApplicationDebugger;
632 #ifdef __cplusplus
633 interface IApplicationDebugger;
634 #endif /* __cplusplus */
635 #endif
636 
637 #ifndef __IDebugApplication32_FWD_DEFINED__
638 #define __IDebugApplication32_FWD_DEFINED__
639 typedef interface IDebugApplication32 IDebugApplication32;
640 #ifdef __cplusplus
641 interface IDebugApplication32;
642 #endif /* __cplusplus */
643 #endif
644 
645 #ifndef __IDebugApplication64_FWD_DEFINED__
646 #define __IDebugApplication64_FWD_DEFINED__
647 typedef interface IDebugApplication64 IDebugApplication64;
648 #ifdef __cplusplus
649 interface IDebugApplication64;
650 #endif /* __cplusplus */
651 #endif
652 
653 #ifndef __IDebugApplicationNode_FWD_DEFINED__
654 #define __IDebugApplicationNode_FWD_DEFINED__
655 typedef interface IDebugApplicationNode IDebugApplicationNode;
656 #ifdef __cplusplus
657 interface IDebugApplicationNode;
658 #endif /* __cplusplus */
659 #endif
660 
661 #ifndef __IDebugApplicationNodeEvents_FWD_DEFINED__
662 #define __IDebugApplicationNodeEvents_FWD_DEFINED__
663 typedef interface IDebugApplicationNodeEvents IDebugApplicationNodeEvents;
664 #ifdef __cplusplus
665 interface IDebugApplicationNodeEvents;
666 #endif /* __cplusplus */
667 #endif
668 
669 #ifndef __IDebugApplicationThread_FWD_DEFINED__
670 #define __IDebugApplicationThread_FWD_DEFINED__
671 typedef interface IDebugApplicationThread IDebugApplicationThread;
672 #ifdef __cplusplus
673 interface IDebugApplicationThread;
674 #endif /* __cplusplus */
675 #endif
676 
677 #ifndef __IDebugAsyncOperation_FWD_DEFINED__
678 #define __IDebugAsyncOperation_FWD_DEFINED__
679 typedef interface IDebugAsyncOperation IDebugAsyncOperation;
680 #ifdef __cplusplus
681 interface IDebugAsyncOperation;
682 #endif /* __cplusplus */
683 #endif
684 
685 #ifndef __IDebugAsyncOperationCallBack_FWD_DEFINED__
686 #define __IDebugAsyncOperationCallBack_FWD_DEFINED__
687 typedef interface IDebugAsyncOperationCallBack IDebugAsyncOperationCallBack;
688 #ifdef __cplusplus
689 interface IDebugAsyncOperationCallBack;
690 #endif /* __cplusplus */
691 #endif
692 
693 #ifndef __IDebugCodeContext_FWD_DEFINED__
694 #define __IDebugCodeContext_FWD_DEFINED__
695 typedef interface IDebugCodeContext IDebugCodeContext;
696 #ifdef __cplusplus
697 interface IDebugCodeContext;
698 #endif /* __cplusplus */
699 #endif
700 
701 #ifndef __IDebugDocument_FWD_DEFINED__
702 #define __IDebugDocument_FWD_DEFINED__
703 typedef interface IDebugDocument IDebugDocument;
704 #ifdef __cplusplus
705 interface IDebugDocument;
706 #endif /* __cplusplus */
707 #endif
708 
709 #ifndef __IDebugDocumentContext_FWD_DEFINED__
710 #define __IDebugDocumentContext_FWD_DEFINED__
711 typedef interface IDebugDocumentContext IDebugDocumentContext;
712 #ifdef __cplusplus
713 interface IDebugDocumentContext;
714 #endif /* __cplusplus */
715 #endif
716 
717 #ifndef __IDebugDocumentHelper32_FWD_DEFINED__
718 #define __IDebugDocumentHelper32_FWD_DEFINED__
719 typedef interface IDebugDocumentHelper32 IDebugDocumentHelper32;
720 #ifdef __cplusplus
721 interface IDebugDocumentHelper32;
722 #endif /* __cplusplus */
723 #endif
724 
725 #ifndef __IDebugDocumentHelper64_FWD_DEFINED__
726 #define __IDebugDocumentHelper64_FWD_DEFINED__
727 typedef interface IDebugDocumentHelper64 IDebugDocumentHelper64;
728 #ifdef __cplusplus
729 interface IDebugDocumentHelper64;
730 #endif /* __cplusplus */
731 #endif
732 
733 #ifndef __IDebugDocumentHost_FWD_DEFINED__
734 #define __IDebugDocumentHost_FWD_DEFINED__
735 typedef interface IDebugDocumentHost IDebugDocumentHost;
736 #ifdef __cplusplus
737 interface IDebugDocumentHost;
738 #endif /* __cplusplus */
739 #endif
740 
741 #ifndef __IDebugDocumentInfo_FWD_DEFINED__
742 #define __IDebugDocumentInfo_FWD_DEFINED__
743 typedef interface IDebugDocumentInfo IDebugDocumentInfo;
744 #ifdef __cplusplus
745 interface IDebugDocumentInfo;
746 #endif /* __cplusplus */
747 #endif
748 
749 #ifndef __IDebugDocumentProvider_FWD_DEFINED__
750 #define __IDebugDocumentProvider_FWD_DEFINED__
751 typedef interface IDebugDocumentProvider IDebugDocumentProvider;
752 #ifdef __cplusplus
753 interface IDebugDocumentProvider;
754 #endif /* __cplusplus */
755 #endif
756 
757 #ifndef __IDebugDocumentText_FWD_DEFINED__
758 #define __IDebugDocumentText_FWD_DEFINED__
759 typedef interface IDebugDocumentText IDebugDocumentText;
760 #ifdef __cplusplus
761 interface IDebugDocumentText;
762 #endif /* __cplusplus */
763 #endif
764 
765 #ifndef __IDebugDocumentTextAuthor_FWD_DEFINED__
766 #define __IDebugDocumentTextAuthor_FWD_DEFINED__
767 typedef interface IDebugDocumentTextAuthor IDebugDocumentTextAuthor;
768 #ifdef __cplusplus
769 interface IDebugDocumentTextAuthor;
770 #endif /* __cplusplus */
771 #endif
772 
773 #ifndef __IDebugDocumentTextEvents_FWD_DEFINED__
774 #define __IDebugDocumentTextEvents_FWD_DEFINED__
775 typedef interface IDebugDocumentTextEvents IDebugDocumentTextEvents;
776 #ifdef __cplusplus
777 interface IDebugDocumentTextEvents;
778 #endif /* __cplusplus */
779 #endif
780 
781 #ifndef __IDebugExpression_FWD_DEFINED__
782 #define __IDebugExpression_FWD_DEFINED__
783 typedef interface IDebugExpression IDebugExpression;
784 #ifdef __cplusplus
785 interface IDebugExpression;
786 #endif /* __cplusplus */
787 #endif
788 
789 #ifndef __IDebugExpressionCallBack_FWD_DEFINED__
790 #define __IDebugExpressionCallBack_FWD_DEFINED__
791 typedef interface IDebugExpressionCallBack IDebugExpressionCallBack;
792 #ifdef __cplusplus
793 interface IDebugExpressionCallBack;
794 #endif /* __cplusplus */
795 #endif
796 
797 #ifndef __IDebugExpressionContext_FWD_DEFINED__
798 #define __IDebugExpressionContext_FWD_DEFINED__
799 typedef interface IDebugExpressionContext IDebugExpressionContext;
800 #ifdef __cplusplus
801 interface IDebugExpressionContext;
802 #endif /* __cplusplus */
803 #endif
804 
805 #ifndef __IDebugFormatter_FWD_DEFINED__
806 #define __IDebugFormatter_FWD_DEFINED__
807 typedef interface IDebugFormatter IDebugFormatter;
808 #ifdef __cplusplus
809 interface IDebugFormatter;
810 #endif /* __cplusplus */
811 #endif
812 
813 #ifndef __IDebugSessionProvider_FWD_DEFINED__
814 #define __IDebugSessionProvider_FWD_DEFINED__
815 typedef interface IDebugSessionProvider IDebugSessionProvider;
816 #ifdef __cplusplus
817 interface IDebugSessionProvider;
818 #endif /* __cplusplus */
819 #endif
820 
821 #ifndef __IDebugStackFrame_FWD_DEFINED__
822 #define __IDebugStackFrame_FWD_DEFINED__
823 typedef interface IDebugStackFrame IDebugStackFrame;
824 #ifdef __cplusplus
825 interface IDebugStackFrame;
826 #endif /* __cplusplus */
827 #endif
828 
829 #ifndef __IDebugStackFrameSniffer_FWD_DEFINED__
830 #define __IDebugStackFrameSniffer_FWD_DEFINED__
831 typedef interface IDebugStackFrameSniffer IDebugStackFrameSniffer;
832 #ifdef __cplusplus
833 interface IDebugStackFrameSniffer;
834 #endif /* __cplusplus */
835 #endif
836 
837 #ifndef __IDebugSyncOperation_FWD_DEFINED__
838 #define __IDebugSyncOperation_FWD_DEFINED__
839 typedef interface IDebugSyncOperation IDebugSyncOperation;
840 #ifdef __cplusplus
841 interface IDebugSyncOperation;
842 #endif /* __cplusplus */
843 #endif
844 
845 #ifndef __IDebugThreadCall32_FWD_DEFINED__
846 #define __IDebugThreadCall32_FWD_DEFINED__
847 typedef interface IDebugThreadCall32 IDebugThreadCall32;
848 #ifdef __cplusplus
849 interface IDebugThreadCall32;
850 #endif /* __cplusplus */
851 #endif
852 
853 #ifndef __IDebugThreadCall64_FWD_DEFINED__
854 #define __IDebugThreadCall64_FWD_DEFINED__
855 typedef interface IDebugThreadCall64 IDebugThreadCall64;
856 #ifdef __cplusplus
857 interface IDebugThreadCall64;
858 #endif /* __cplusplus */
859 #endif
860 
861 #ifndef __IEnumActiveScriptDebugs_FWD_DEFINED__
862 #define __IEnumActiveScriptDebugs_FWD_DEFINED__
863 typedef interface IEnumActiveScriptDebugs IEnumActiveScriptDebugs;
864 #ifdef __cplusplus
865 interface IEnumActiveScriptDebugs;
866 #endif /* __cplusplus */
867 #endif
868 
869 #ifndef __IEnumDebugApplicationNodes_FWD_DEFINED__
870 #define __IEnumDebugApplicationNodes_FWD_DEFINED__
871 typedef interface IEnumDebugApplicationNodes IEnumDebugApplicationNodes;
872 #ifdef __cplusplus
873 interface IEnumDebugApplicationNodes;
874 #endif /* __cplusplus */
875 #endif
876 
877 #ifndef __IEnumDebugCodeContexts_FWD_DEFINED__
878 #define __IEnumDebugCodeContexts_FWD_DEFINED__
879 typedef interface IEnumDebugCodeContexts IEnumDebugCodeContexts;
880 #ifdef __cplusplus
881 interface IEnumDebugCodeContexts;
882 #endif /* __cplusplus */
883 #endif
884 
885 #ifndef __IEnumDebugDocumentContexts_FWD_DEFINED__
886 #define __IEnumDebugDocumentContexts_FWD_DEFINED__
887 typedef interface IEnumDebugDocumentContexts IEnumDebugDocumentContexts;
888 #ifdef __cplusplus
889 interface IEnumDebugDocumentContexts;
890 #endif /* __cplusplus */
891 #endif
892 
893 #ifndef __IEnumDebugExpressionContexts_FWD_DEFINED__
894 #define __IEnumDebugExpressionContexts_FWD_DEFINED__
895 typedef interface IEnumDebugExpressionContexts IEnumDebugExpressionContexts;
896 #ifdef __cplusplus
897 interface IEnumDebugExpressionContexts;
898 #endif /* __cplusplus */
899 #endif
900 
901 #ifndef __IEnumDebugObjectBrowsers_FWD_DEFINED__
902 #define __IEnumDebugObjectBrowsers_FWD_DEFINED__
903 typedef interface IEnumDebugObjectBrowsers IEnumDebugObjectBrowsers;
904 #ifdef __cplusplus
905 interface IEnumDebugObjectBrowsers;
906 #endif /* __cplusplus */
907 #endif
908 
909 #ifndef __IEnumDebugStackFrames_FWD_DEFINED__
910 #define __IEnumDebugStackFrames_FWD_DEFINED__
911 typedef interface IEnumDebugStackFrames IEnumDebugStackFrames;
912 #ifdef __cplusplus
913 interface IEnumDebugStackFrames;
914 #endif /* __cplusplus */
915 #endif
916 
917 #ifndef __IEnumDebugStackFrames64_FWD_DEFINED__
918 #define __IEnumDebugStackFrames64_FWD_DEFINED__
919 typedef interface IEnumDebugStackFrames64 IEnumDebugStackFrames64;
920 #ifdef __cplusplus
921 interface IEnumDebugStackFrames64;
922 #endif /* __cplusplus */
923 #endif
924 
925 #ifndef __IEnumRemoteDebugApplications_FWD_DEFINED__
926 #define __IEnumRemoteDebugApplications_FWD_DEFINED__
927 typedef interface IEnumRemoteDebugApplications IEnumRemoteDebugApplications;
928 #ifdef __cplusplus
929 interface IEnumRemoteDebugApplications;
930 #endif /* __cplusplus */
931 #endif
932 
933 #ifndef __IEnumRemoteDebugApplicationThreads_FWD_DEFINED__
934 #define __IEnumRemoteDebugApplicationThreads_FWD_DEFINED__
935 typedef interface IEnumRemoteDebugApplicationThreads IEnumRemoteDebugApplicationThreads;
936 #ifdef __cplusplus
937 interface IEnumRemoteDebugApplicationThreads;
938 #endif /* __cplusplus */
939 #endif
940 
941 #ifndef __IMachineDebugManager_FWD_DEFINED__
942 #define __IMachineDebugManager_FWD_DEFINED__
943 typedef interface IMachineDebugManager IMachineDebugManager;
944 #ifdef __cplusplus
945 interface IMachineDebugManager;
946 #endif /* __cplusplus */
947 #endif
948 
949 #ifndef __IMachineDebugManagerCookie_FWD_DEFINED__
950 #define __IMachineDebugManagerCookie_FWD_DEFINED__
951 typedef interface IMachineDebugManagerCookie IMachineDebugManagerCookie;
952 #ifdef __cplusplus
953 interface IMachineDebugManagerCookie;
954 #endif /* __cplusplus */
955 #endif
956 
957 #ifndef __IMachineDebugManagerEvents_FWD_DEFINED__
958 #define __IMachineDebugManagerEvents_FWD_DEFINED__
959 typedef interface IMachineDebugManagerEvents IMachineDebugManagerEvents;
960 #ifdef __cplusplus
961 interface IMachineDebugManagerEvents;
962 #endif /* __cplusplus */
963 #endif
964 
965 #ifndef __IProcessDebugManager_FWD_DEFINED__
966 #define __IProcessDebugManager_FWD_DEFINED__
967 typedef interface IProcessDebugManager IProcessDebugManager;
968 #ifdef __cplusplus
969 interface IProcessDebugManager;
970 #endif /* __cplusplus */
971 #endif
972 
973 #ifndef __IProvideExpressionContexts_FWD_DEFINED__
974 #define __IProvideExpressionContexts_FWD_DEFINED__
975 typedef interface IProvideExpressionContexts IProvideExpressionContexts;
976 #ifdef __cplusplus
977 interface IProvideExpressionContexts;
978 #endif /* __cplusplus */
979 #endif
980 
981 #ifndef __IRemoteDebugApplication_FWD_DEFINED__
982 #define __IRemoteDebugApplication_FWD_DEFINED__
983 typedef interface IRemoteDebugApplication IRemoteDebugApplication;
984 #ifdef __cplusplus
985 interface IRemoteDebugApplication;
986 #endif /* __cplusplus */
987 #endif
988 
989 #ifndef __IRemoteDebugApplicationThread_FWD_DEFINED__
990 #define __IRemoteDebugApplicationThread_FWD_DEFINED__
991 typedef interface IRemoteDebugApplicationThread IRemoteDebugApplicationThread;
992 #ifdef __cplusplus
993 interface IRemoteDebugApplicationThread;
994 #endif /* __cplusplus */
995 #endif
996 
997 typedef DWORD APPBREAKFLAGS;
998 typedef WORD SOURCE_TEXT_ATTR;
999 typedef DWORD TEXT_DOC_ATTR;
1000 typedef enum tagBREAKPOINT_STATE {
1001     BREAKPOINT_DELETED = 0,
1002     BREAKPOINT_DISABLED = 1,
1003     BREAKPOINT_ENABLED = 2
1004 } BREAKPOINT_STATE;
1005 typedef enum tagBREAKREASON {
1006     BREAKREASON_STEP = 0,
1007     BREAKREASON_BREAKPOINT = 1,
1008     BREAKREASON_DEBUGGER_BLOCK = 2,
1009     BREAKREASON_HOST_INITIATED = 3,
1010     BREAKREASON_LANGUAGE_INITIATED = 4,
1011     BREAKREASON_DEBUGGER_HALT = 5,
1012     BREAKREASON_ERROR = 6,
1013     BREAKREASON_JIT = 7
1014 } BREAKREASON;
1015 typedef enum tagBREAKRESUME_ACTION {
1016     BREAKRESUMEACTION_ABORT = 0,
1017     BREAKRESUMEACTION_CONTINUE = 1,
1018     BREAKRESUMEACTION_STEP_INTO = 2,
1019     BREAKRESUMEACTION_STEP_OVER = 3,
1020     BREAKRESUMEACTION_STEP_OUT = 4,
1021     BREAKRESUMEACTION_IGNORE = 5
1022 } BREAKRESUMEACTION;
1023 typedef enum tagDOCUMENTNAMETYPE {
1024     DOCUMENTNAMETYPE_APPNODE = 0,
1025     DOCUMENTNAMETYPE_TITLE = 1,
1026     DOCUMENTNAMETYPE_FILE_TAIL = 2,
1027     DOCUMENTNAMETYPE_URL = 3,
1028     DOCUMENTNAMETYPE_UNIQUE_TITLE = 4
1029 } DOCUMENTNAMETYPE;
1030 typedef enum tagERRORRESUMEACTION {
1031     ERRORRESUMEACTION_ReexecuteErrorStatement = 0,
1032     ERRORRESUMEACTION_AbortCallAndReturnErrorToCaller = 1,
1033     ERRORRESUMEACTION_SkipErrorStatement = 2
1034 } ERRORRESUMEACTION;
1035 typedef struct tagDebugStackFrameDescriptor {
1036     IDebugStackFrame *pdsf;
1037     DWORD dwMin;
1038     DWORD dwLim;
1039     WINBOOL fFinal;
1040     IUnknown *punkFinal;
1041 } DebugStackFrameDescriptor;
1042 typedef struct tagDebugStackFrameDescriptor64 {
1043     IDebugStackFrame *pdsf;
1044     DWORDLONG dwMin;
1045     DWORDLONG dwLim;
1046     WINBOOL fFinal;
1047     IUnknown *punkFinal;
1048 } DebugStackFrameDescriptor64;
1049 #define APPBREAKFLAG_DEBUGGER_BLOCK (0x1)
1050 
1051 #define APPBREAKFLAG_DEBUGGER_HALT (0x2)
1052 
1053 #define APPBREAKFLAG_STEP (0x10000)
1054 
1055 #define APPBREAKFLAG_NESTED (0x20000)
1056 
1057 #define APPBREAKFLAG_STEPTYPE_SOURCE (0x0)
1058 
1059 #define APPBREAKFLAG_STEPTYPE_BYTECODE (0x100000)
1060 
1061 #define APPBREAKFLAG_STEPTYPE_MACHINE (0x200000)
1062 
1063 #define APPBREAKFLAG_STEPTYPE_MASK (0xf00000)
1064 
1065 #define APPBREAKFLAG_IN_BREAKPOINT (0x80000000)
1066 
1067 #define SOURCETEXT_ATTR_KEYWORD (0x1)
1068 
1069 #define SOURCETEXT_ATTR_COMMENT (0x2)
1070 
1071 #define SOURCETEXT_ATTR_NONSOURCE (0x4)
1072 
1073 #define SOURCETEXT_ATTR_OPERATOR (0x8)
1074 
1075 #define SOURCETEXT_ATTR_NUMBER (0x10)
1076 
1077 #define SOURCETEXT_ATTR_STRING (0x20)
1078 
1079 #define SOURCETEXT_ATTR_FUNCTION_START (0x40)
1080 
1081 #define TEXT_DOC_ATTR_READONLY (0x1)
1082 
1083 #define TEXT_DOC_ATTR_TYPE_PRIMARY (0x2)
1084 
1085 #define TEXT_DOC_ATTR_TYPE_WORKER (0x4)
1086 
1087 #define TEXT_DOC_ATTR_TYPE_SCRIPT (0x8)
1088 
1089 
1090 #define DEBUG_TEXT_ISEXPRESSION (0x1)
1091 
1092 #define DEBUG_TEXT_RETURNVALUE (0x2)
1093 
1094 #define DEBUG_TEXT_NOSIDEEFFECTS (0x4)
1095 
1096 #define DEBUG_TEXT_ALLOWBREAKPOINTS (0x8)
1097 
1098 #define DEBUG_TEXT_ALLOWERRORREPORT (0x10)
1099 
1100 #define DEBUG_TEXT_EVALUATETOCODECONTEXT (0x20)
1101 
1102 #ifndef DISABLE_ACTIVDBG_INTERFACE_WRAPPERS
1103 #ifdef _WIN64
1104 #define IDebugApplication IDebugApplication64
1105 #define IID_IDebugApplication IID_IDebugApplication64
1106 #define IDebugThreadCall IDebugThreadCall64
1107 #define IID_IDebugThreadCall IID_IDebugThreadCall64
1108 #define SynchronousCallIntoThread SynchronousCallIntoThread64
1109 #define IActiveScriptDebug IActiveScriptDebug64
1110 #define IID_IActiveScriptDebug IID_IActiveScriptDebug64
1111 #define IActiveScriptSiteDebug IActiveScriptSiteDebug64
1112 #define IID_IActiveScriptSiteDebug IID_IActiveScriptSiteDebug64
1113 #define IDebugStackFrameSnifferEx IDebugStackFrameSnifferEx64
1114 #define IID_IDebugStackFrameSnifferEx IID_IDebugStackFrameSnifferEx64
1115 #define EnumStackFramesEx EnumStackFramesEx64
1116 #define IDebugDocumentHelper IDebugDocumentHelper64
1117 #define IID_IDebugDocumentHelper IID_IDebugDocumentHelper64
1118 #define IProcessDebugManager IProcessDebugManager64
1119 #define IID_IProcessDebugManager IID_IProcessDebugManager64
1120 #else
1121 #define IDebugApplication IDebugApplication32
1122 #define IID_IDebugApplication IID_IDebugApplication32
1123 #define IDebugThreadCall IDebugThreadCall32
1124 #define IID_IDebugThreadCall IID_IDebugThreadCall32
1125 #define SynchronousCallIntoThread SynchronousCallIntoThread32
1126 #define IActiveScriptDebug IActiveScriptDebug32
1127 #define IID_IActiveScriptDebug IID_IActiveScriptDebug32
1128 #define IActiveScriptSiteDebug IActiveScriptSiteDebug32
1129 #define IID_IActiveScriptSiteDebug IID_IActiveScriptSiteDebug32
1130 #define IDebugStackFrameSnifferEx IDebugStackFrameSnifferEx32
1131 #define IID_IDebugStackFrameSnifferEx IID_IDebugStackFrameSnifferEx32
1132 #define EnumStackFramesEx EnumStackFramesEx32
1133 #define IDebugDocumentHelper IDebugDocumentHelper32
1134 #define IID_IDebugDocumentHelper IID_IDebugDocumentHelper32
1135 #define IProcessDebugManager IProcessDebugManager32
1136 #define IID_IProcessDebugManager IID_IProcessDebugManager32
1137 #endif
1138 #endif
1139 EXTERN_C const CLSID CLSID_DebugHelper;
1140 EXTERN_C const CLSID CLSID_MachineDebugManager;
1141 EXTERN_C const CLSID CLSID_ProcessDebugManager;
1142 /*****************************************************************************
1143  * IActiveScriptDebug32 interface
1144  */
1145 #ifndef __IActiveScriptDebug32_INTERFACE_DEFINED__
1146 #define __IActiveScriptDebug32_INTERFACE_DEFINED__
1147 
1148 DEFINE_GUID(IID_IActiveScriptDebug32, 0x51973c10, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
1149 #if defined(__cplusplus) && !defined(CINTERFACE)
1150 MIDL_INTERFACE("51973c10-cb0c-11d0-b5c9-00a0244a0e7a")
1151 IActiveScriptDebug32 : public IUnknown
1152 {
1153     virtual HRESULT STDMETHODCALLTYPE GetScriptTextAttributes(
1154         LPCOLESTR pstrCode,
1155         ULONG uNumCodeChars,
1156         LPCOLESTR pstrDelimiter,
1157         DWORD dwFlags,
1158         SOURCE_TEXT_ATTR *pattr) = 0;
1159 
1160     virtual HRESULT STDMETHODCALLTYPE GetScriptletTextAttributes(
1161         LPCOLESTR pstrCode,
1162         ULONG uNumCodeChars,
1163         LPCOLESTR pstrDelimiter,
1164         DWORD dwFlags,
1165         SOURCE_TEXT_ATTR *pattr) = 0;
1166 
1167     virtual HRESULT STDMETHODCALLTYPE EnumCodeContextsOfPosition(
1168         DWORD dwSourceContext,
1169         ULONG uCharacterOffset,
1170         ULONG uNumChars,
1171         IEnumDebugCodeContexts **ppescc) = 0;
1172 
1173 };
1174 #ifdef __CRT_UUID_DECL
1175 __CRT_UUID_DECL(IActiveScriptDebug32, 0x51973c10, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
1176 #endif
1177 #else
1178 typedef struct IActiveScriptDebug32Vtbl {
1179     BEGIN_INTERFACE
1180 
1181     /*** IUnknown methods ***/
1182     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1183         IActiveScriptDebug32 *This,
1184         REFIID riid,
1185         void **ppvObject);
1186 
1187     ULONG (STDMETHODCALLTYPE *AddRef)(
1188         IActiveScriptDebug32 *This);
1189 
1190     ULONG (STDMETHODCALLTYPE *Release)(
1191         IActiveScriptDebug32 *This);
1192 
1193     /*** IActiveScriptDebug32 methods ***/
1194     HRESULT (STDMETHODCALLTYPE *GetScriptTextAttributes)(
1195         IActiveScriptDebug32 *This,
1196         LPCOLESTR pstrCode,
1197         ULONG uNumCodeChars,
1198         LPCOLESTR pstrDelimiter,
1199         DWORD dwFlags,
1200         SOURCE_TEXT_ATTR *pattr);
1201 
1202     HRESULT (STDMETHODCALLTYPE *GetScriptletTextAttributes)(
1203         IActiveScriptDebug32 *This,
1204         LPCOLESTR pstrCode,
1205         ULONG uNumCodeChars,
1206         LPCOLESTR pstrDelimiter,
1207         DWORD dwFlags,
1208         SOURCE_TEXT_ATTR *pattr);
1209 
1210     HRESULT (STDMETHODCALLTYPE *EnumCodeContextsOfPosition)(
1211         IActiveScriptDebug32 *This,
1212         DWORD dwSourceContext,
1213         ULONG uCharacterOffset,
1214         ULONG uNumChars,
1215         IEnumDebugCodeContexts **ppescc);
1216 
1217     END_INTERFACE
1218 } IActiveScriptDebug32Vtbl;
1219 
1220 interface IActiveScriptDebug32 {
1221     CONST_VTBL IActiveScriptDebug32Vtbl* lpVtbl;
1222 };
1223 
1224 #ifdef COBJMACROS
1225 #ifndef WIDL_C_INLINE_WRAPPERS
1226 /*** IUnknown methods ***/
1227 #define IActiveScriptDebug32_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1228 #define IActiveScriptDebug32_AddRef(This) (This)->lpVtbl->AddRef(This)
1229 #define IActiveScriptDebug32_Release(This) (This)->lpVtbl->Release(This)
1230 /*** IActiveScriptDebug32 methods ***/
1231 #define IActiveScriptDebug32_GetScriptTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr) (This)->lpVtbl->GetScriptTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr)
1232 #define IActiveScriptDebug32_GetScriptletTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr) (This)->lpVtbl->GetScriptletTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr)
1233 #define IActiveScriptDebug32_EnumCodeContextsOfPosition(This,dwSourceContext,uCharacterOffset,uNumChars,ppescc) (This)->lpVtbl->EnumCodeContextsOfPosition(This,dwSourceContext,uCharacterOffset,uNumChars,ppescc)
1234 #else
1235 /*** IUnknown methods ***/
1236 static FORCEINLINE HRESULT IActiveScriptDebug32_QueryInterface(IActiveScriptDebug32* This,REFIID riid,void **ppvObject) {
1237     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1238 }
1239 static FORCEINLINE ULONG IActiveScriptDebug32_AddRef(IActiveScriptDebug32* This) {
1240     return This->lpVtbl->AddRef(This);
1241 }
1242 static FORCEINLINE ULONG IActiveScriptDebug32_Release(IActiveScriptDebug32* This) {
1243     return This->lpVtbl->Release(This);
1244 }
1245 /*** IActiveScriptDebug32 methods ***/
1246 static FORCEINLINE HRESULT IActiveScriptDebug32_GetScriptTextAttributes(IActiveScriptDebug32* This,LPCOLESTR pstrCode,ULONG uNumCodeChars,LPCOLESTR pstrDelimiter,DWORD dwFlags,SOURCE_TEXT_ATTR *pattr) {
1247     return This->lpVtbl->GetScriptTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr);
1248 }
1249 static FORCEINLINE HRESULT IActiveScriptDebug32_GetScriptletTextAttributes(IActiveScriptDebug32* This,LPCOLESTR pstrCode,ULONG uNumCodeChars,LPCOLESTR pstrDelimiter,DWORD dwFlags,SOURCE_TEXT_ATTR *pattr) {
1250     return This->lpVtbl->GetScriptletTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr);
1251 }
1252 static FORCEINLINE HRESULT IActiveScriptDebug32_EnumCodeContextsOfPosition(IActiveScriptDebug32* This,DWORD dwSourceContext,ULONG uCharacterOffset,ULONG uNumChars,IEnumDebugCodeContexts **ppescc) {
1253     return This->lpVtbl->EnumCodeContextsOfPosition(This,dwSourceContext,uCharacterOffset,uNumChars,ppescc);
1254 }
1255 #endif
1256 #endif
1257 
1258 #endif
1259 
1260 
1261 #endif  /* __IActiveScriptDebug32_INTERFACE_DEFINED__ */
1262 
1263 /*****************************************************************************
1264  * IActiveScriptDebug64 interface
1265  */
1266 #ifndef __IActiveScriptDebug64_INTERFACE_DEFINED__
1267 #define __IActiveScriptDebug64_INTERFACE_DEFINED__
1268 
1269 DEFINE_GUID(IID_IActiveScriptDebug64, 0xbc437e23, 0xf5b8, 0x47f4, 0xbb,0x79, 0x7d,0x1c,0xe5,0x48,0x3b,0x86);
1270 #if defined(__cplusplus) && !defined(CINTERFACE)
1271 MIDL_INTERFACE("bc437e23-f5b8-47f4-bb79-7d1ce5483b86")
1272 IActiveScriptDebug64 : public IUnknown
1273 {
1274     virtual HRESULT STDMETHODCALLTYPE GetScriptTextAttributes(
1275         LPCOLESTR pstrCode,
1276         ULONG uNumCodeChars,
1277         LPCOLESTR pstrDelimiter,
1278         DWORD dwFlags,
1279         SOURCE_TEXT_ATTR *pattr) = 0;
1280 
1281     virtual HRESULT STDMETHODCALLTYPE GetScriptletTextAttributes(
1282         LPCOLESTR pstrCode,
1283         ULONG uNumCodeChars,
1284         LPCOLESTR pstrDelimiter,
1285         DWORD dwFlags,
1286         SOURCE_TEXT_ATTR *pattr) = 0;
1287 
1288     virtual HRESULT STDMETHODCALLTYPE EnumCodeContextsOfPosition(
1289         DWORDLONG dwSourceContext,
1290         ULONG uCharacterOffset,
1291         ULONG uNumChars,
1292         IEnumDebugCodeContexts **ppescc) = 0;
1293 
1294 };
1295 #ifdef __CRT_UUID_DECL
1296 __CRT_UUID_DECL(IActiveScriptDebug64, 0xbc437e23, 0xf5b8, 0x47f4, 0xbb,0x79, 0x7d,0x1c,0xe5,0x48,0x3b,0x86)
1297 #endif
1298 #else
1299 typedef struct IActiveScriptDebug64Vtbl {
1300     BEGIN_INTERFACE
1301 
1302     /*** IUnknown methods ***/
1303     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1304         IActiveScriptDebug64 *This,
1305         REFIID riid,
1306         void **ppvObject);
1307 
1308     ULONG (STDMETHODCALLTYPE *AddRef)(
1309         IActiveScriptDebug64 *This);
1310 
1311     ULONG (STDMETHODCALLTYPE *Release)(
1312         IActiveScriptDebug64 *This);
1313 
1314     /*** IActiveScriptDebug64 methods ***/
1315     HRESULT (STDMETHODCALLTYPE *GetScriptTextAttributes)(
1316         IActiveScriptDebug64 *This,
1317         LPCOLESTR pstrCode,
1318         ULONG uNumCodeChars,
1319         LPCOLESTR pstrDelimiter,
1320         DWORD dwFlags,
1321         SOURCE_TEXT_ATTR *pattr);
1322 
1323     HRESULT (STDMETHODCALLTYPE *GetScriptletTextAttributes)(
1324         IActiveScriptDebug64 *This,
1325         LPCOLESTR pstrCode,
1326         ULONG uNumCodeChars,
1327         LPCOLESTR pstrDelimiter,
1328         DWORD dwFlags,
1329         SOURCE_TEXT_ATTR *pattr);
1330 
1331     HRESULT (STDMETHODCALLTYPE *EnumCodeContextsOfPosition)(
1332         IActiveScriptDebug64 *This,
1333         DWORDLONG dwSourceContext,
1334         ULONG uCharacterOffset,
1335         ULONG uNumChars,
1336         IEnumDebugCodeContexts **ppescc);
1337 
1338     END_INTERFACE
1339 } IActiveScriptDebug64Vtbl;
1340 
1341 interface IActiveScriptDebug64 {
1342     CONST_VTBL IActiveScriptDebug64Vtbl* lpVtbl;
1343 };
1344 
1345 #ifdef COBJMACROS
1346 #ifndef WIDL_C_INLINE_WRAPPERS
1347 /*** IUnknown methods ***/
1348 #define IActiveScriptDebug64_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1349 #define IActiveScriptDebug64_AddRef(This) (This)->lpVtbl->AddRef(This)
1350 #define IActiveScriptDebug64_Release(This) (This)->lpVtbl->Release(This)
1351 /*** IActiveScriptDebug64 methods ***/
1352 #define IActiveScriptDebug64_GetScriptTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr) (This)->lpVtbl->GetScriptTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr)
1353 #define IActiveScriptDebug64_GetScriptletTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr) (This)->lpVtbl->GetScriptletTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr)
1354 #define IActiveScriptDebug64_EnumCodeContextsOfPosition(This,dwSourceContext,uCharacterOffset,uNumChars,ppescc) (This)->lpVtbl->EnumCodeContextsOfPosition(This,dwSourceContext,uCharacterOffset,uNumChars,ppescc)
1355 #else
1356 /*** IUnknown methods ***/
1357 static FORCEINLINE HRESULT IActiveScriptDebug64_QueryInterface(IActiveScriptDebug64* This,REFIID riid,void **ppvObject) {
1358     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1359 }
1360 static FORCEINLINE ULONG IActiveScriptDebug64_AddRef(IActiveScriptDebug64* This) {
1361     return This->lpVtbl->AddRef(This);
1362 }
1363 static FORCEINLINE ULONG IActiveScriptDebug64_Release(IActiveScriptDebug64* This) {
1364     return This->lpVtbl->Release(This);
1365 }
1366 /*** IActiveScriptDebug64 methods ***/
1367 static FORCEINLINE HRESULT IActiveScriptDebug64_GetScriptTextAttributes(IActiveScriptDebug64* This,LPCOLESTR pstrCode,ULONG uNumCodeChars,LPCOLESTR pstrDelimiter,DWORD dwFlags,SOURCE_TEXT_ATTR *pattr) {
1368     return This->lpVtbl->GetScriptTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr);
1369 }
1370 static FORCEINLINE HRESULT IActiveScriptDebug64_GetScriptletTextAttributes(IActiveScriptDebug64* This,LPCOLESTR pstrCode,ULONG uNumCodeChars,LPCOLESTR pstrDelimiter,DWORD dwFlags,SOURCE_TEXT_ATTR *pattr) {
1371     return This->lpVtbl->GetScriptletTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr);
1372 }
1373 static FORCEINLINE HRESULT IActiveScriptDebug64_EnumCodeContextsOfPosition(IActiveScriptDebug64* This,DWORDLONG dwSourceContext,ULONG uCharacterOffset,ULONG uNumChars,IEnumDebugCodeContexts **ppescc) {
1374     return This->lpVtbl->EnumCodeContextsOfPosition(This,dwSourceContext,uCharacterOffset,uNumChars,ppescc);
1375 }
1376 #endif
1377 #endif
1378 
1379 #endif
1380 
1381 
1382 #endif  /* __IActiveScriptDebug64_INTERFACE_DEFINED__ */
1383 
1384 /*****************************************************************************
1385  * IActiveScriptSiteDebug32 interface
1386  */
1387 #ifndef __IActiveScriptSiteDebug32_INTERFACE_DEFINED__
1388 #define __IActiveScriptSiteDebug32_INTERFACE_DEFINED__
1389 
1390 DEFINE_GUID(IID_IActiveScriptSiteDebug32, 0x51973c11, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
1391 #if defined(__cplusplus) && !defined(CINTERFACE)
1392 MIDL_INTERFACE("51973c11-cb0c-11d0-b5c9-00a0244a0e7a")
1393 IActiveScriptSiteDebug32 : public IUnknown
1394 {
1395     virtual HRESULT STDMETHODCALLTYPE GetDocumentContextFromPosition(
1396         DWORD dwSourceContext,
1397         ULONG uCharacterOffset,
1398         ULONG uNumChars,
1399         IDebugDocumentContext **ppsc) = 0;
1400 
1401     virtual HRESULT STDMETHODCALLTYPE GetApplication(
1402         IDebugApplication32 **ppda) = 0;
1403 
1404     virtual HRESULT STDMETHODCALLTYPE GetRootApplicationNode(
1405         IDebugApplicationNode **ppdanRoot) = 0;
1406 
1407     virtual HRESULT STDMETHODCALLTYPE OnScriptErrorDebug(
1408         IActiveScriptErrorDebug *pErrorDebug,
1409         WINBOOL *pfEnterDebugger,
1410         WINBOOL *pfCallOnScriptErrorWhenContinuing) = 0;
1411 
1412 };
1413 #ifdef __CRT_UUID_DECL
1414 __CRT_UUID_DECL(IActiveScriptSiteDebug32, 0x51973c11, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
1415 #endif
1416 #else
1417 typedef struct IActiveScriptSiteDebug32Vtbl {
1418     BEGIN_INTERFACE
1419 
1420     /*** IUnknown methods ***/
1421     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1422         IActiveScriptSiteDebug32 *This,
1423         REFIID riid,
1424         void **ppvObject);
1425 
1426     ULONG (STDMETHODCALLTYPE *AddRef)(
1427         IActiveScriptSiteDebug32 *This);
1428 
1429     ULONG (STDMETHODCALLTYPE *Release)(
1430         IActiveScriptSiteDebug32 *This);
1431 
1432     /*** IActiveScriptSiteDebug32 methods ***/
1433     HRESULT (STDMETHODCALLTYPE *GetDocumentContextFromPosition)(
1434         IActiveScriptSiteDebug32 *This,
1435         DWORD dwSourceContext,
1436         ULONG uCharacterOffset,
1437         ULONG uNumChars,
1438         IDebugDocumentContext **ppsc);
1439 
1440     HRESULT (STDMETHODCALLTYPE *GetApplication)(
1441         IActiveScriptSiteDebug32 *This,
1442         IDebugApplication32 **ppda);
1443 
1444     HRESULT (STDMETHODCALLTYPE *GetRootApplicationNode)(
1445         IActiveScriptSiteDebug32 *This,
1446         IDebugApplicationNode **ppdanRoot);
1447 
1448     HRESULT (STDMETHODCALLTYPE *OnScriptErrorDebug)(
1449         IActiveScriptSiteDebug32 *This,
1450         IActiveScriptErrorDebug *pErrorDebug,
1451         WINBOOL *pfEnterDebugger,
1452         WINBOOL *pfCallOnScriptErrorWhenContinuing);
1453 
1454     END_INTERFACE
1455 } IActiveScriptSiteDebug32Vtbl;
1456 
1457 interface IActiveScriptSiteDebug32 {
1458     CONST_VTBL IActiveScriptSiteDebug32Vtbl* lpVtbl;
1459 };
1460 
1461 #ifdef COBJMACROS
1462 #ifndef WIDL_C_INLINE_WRAPPERS
1463 /*** IUnknown methods ***/
1464 #define IActiveScriptSiteDebug32_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1465 #define IActiveScriptSiteDebug32_AddRef(This) (This)->lpVtbl->AddRef(This)
1466 #define IActiveScriptSiteDebug32_Release(This) (This)->lpVtbl->Release(This)
1467 /*** IActiveScriptSiteDebug32 methods ***/
1468 #define IActiveScriptSiteDebug32_GetDocumentContextFromPosition(This,dwSourceContext,uCharacterOffset,uNumChars,ppsc) (This)->lpVtbl->GetDocumentContextFromPosition(This,dwSourceContext,uCharacterOffset,uNumChars,ppsc)
1469 #define IActiveScriptSiteDebug32_GetApplication(This,ppda) (This)->lpVtbl->GetApplication(This,ppda)
1470 #define IActiveScriptSiteDebug32_GetRootApplicationNode(This,ppdanRoot) (This)->lpVtbl->GetRootApplicationNode(This,ppdanRoot)
1471 #define IActiveScriptSiteDebug32_OnScriptErrorDebug(This,pErrorDebug,pfEnterDebugger,pfCallOnScriptErrorWhenContinuing) (This)->lpVtbl->OnScriptErrorDebug(This,pErrorDebug,pfEnterDebugger,pfCallOnScriptErrorWhenContinuing)
1472 #else
1473 /*** IUnknown methods ***/
1474 static FORCEINLINE HRESULT IActiveScriptSiteDebug32_QueryInterface(IActiveScriptSiteDebug32* This,REFIID riid,void **ppvObject) {
1475     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1476 }
1477 static FORCEINLINE ULONG IActiveScriptSiteDebug32_AddRef(IActiveScriptSiteDebug32* This) {
1478     return This->lpVtbl->AddRef(This);
1479 }
1480 static FORCEINLINE ULONG IActiveScriptSiteDebug32_Release(IActiveScriptSiteDebug32* This) {
1481     return This->lpVtbl->Release(This);
1482 }
1483 /*** IActiveScriptSiteDebug32 methods ***/
1484 static FORCEINLINE HRESULT IActiveScriptSiteDebug32_GetDocumentContextFromPosition(IActiveScriptSiteDebug32* This,DWORD dwSourceContext,ULONG uCharacterOffset,ULONG uNumChars,IDebugDocumentContext **ppsc) {
1485     return This->lpVtbl->GetDocumentContextFromPosition(This,dwSourceContext,uCharacterOffset,uNumChars,ppsc);
1486 }
1487 static FORCEINLINE HRESULT IActiveScriptSiteDebug32_GetApplication(IActiveScriptSiteDebug32* This,IDebugApplication32 **ppda) {
1488     return This->lpVtbl->GetApplication(This,ppda);
1489 }
1490 static FORCEINLINE HRESULT IActiveScriptSiteDebug32_GetRootApplicationNode(IActiveScriptSiteDebug32* This,IDebugApplicationNode **ppdanRoot) {
1491     return This->lpVtbl->GetRootApplicationNode(This,ppdanRoot);
1492 }
1493 static FORCEINLINE HRESULT IActiveScriptSiteDebug32_OnScriptErrorDebug(IActiveScriptSiteDebug32* This,IActiveScriptErrorDebug *pErrorDebug,WINBOOL *pfEnterDebugger,WINBOOL *pfCallOnScriptErrorWhenContinuing) {
1494     return This->lpVtbl->OnScriptErrorDebug(This,pErrorDebug,pfEnterDebugger,pfCallOnScriptErrorWhenContinuing);
1495 }
1496 #endif
1497 #endif
1498 
1499 #endif
1500 
1501 
1502 #endif  /* __IActiveScriptSiteDebug32_INTERFACE_DEFINED__ */
1503 
1504 /*****************************************************************************
1505  * IActiveScriptSiteDebug64 interface
1506  */
1507 #ifndef __IActiveScriptSiteDebug64_INTERFACE_DEFINED__
1508 #define __IActiveScriptSiteDebug64_INTERFACE_DEFINED__
1509 
1510 DEFINE_GUID(IID_IActiveScriptSiteDebug64, 0xd6b96b0a, 0x7463, 0x402c, 0x92,0xac, 0x89,0x98,0x42,0x26,0x94,0x2f);
1511 #if defined(__cplusplus) && !defined(CINTERFACE)
1512 MIDL_INTERFACE("d6b96b0a-7463-402c-92ac-89984226942f")
1513 IActiveScriptSiteDebug64 : public IUnknown
1514 {
1515     virtual HRESULT STDMETHODCALLTYPE GetDocumentContextFromPosition(
1516         DWORDLONG dwSourceContext,
1517         ULONG uCharacterOffset,
1518         ULONG uNumChars,
1519         IDebugDocumentContext **ppsc) = 0;
1520 
1521     virtual HRESULT STDMETHODCALLTYPE GetApplication(
1522         IDebugApplication64 **ppda) = 0;
1523 
1524     virtual HRESULT STDMETHODCALLTYPE GetRootApplicationNode(
1525         IDebugApplicationNode **ppdanRoot) = 0;
1526 
1527     virtual HRESULT STDMETHODCALLTYPE OnScriptErrorDebug(
1528         IActiveScriptErrorDebug *pErrorDebug,
1529         WINBOOL *pfEnterDebugger,
1530         WINBOOL *pfCallOnScriptErrorWhenContinuing) = 0;
1531 
1532 };
1533 #ifdef __CRT_UUID_DECL
1534 __CRT_UUID_DECL(IActiveScriptSiteDebug64, 0xd6b96b0a, 0x7463, 0x402c, 0x92,0xac, 0x89,0x98,0x42,0x26,0x94,0x2f)
1535 #endif
1536 #else
1537 typedef struct IActiveScriptSiteDebug64Vtbl {
1538     BEGIN_INTERFACE
1539 
1540     /*** IUnknown methods ***/
1541     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1542         IActiveScriptSiteDebug64 *This,
1543         REFIID riid,
1544         void **ppvObject);
1545 
1546     ULONG (STDMETHODCALLTYPE *AddRef)(
1547         IActiveScriptSiteDebug64 *This);
1548 
1549     ULONG (STDMETHODCALLTYPE *Release)(
1550         IActiveScriptSiteDebug64 *This);
1551 
1552     /*** IActiveScriptSiteDebug64 methods ***/
1553     HRESULT (STDMETHODCALLTYPE *GetDocumentContextFromPosition)(
1554         IActiveScriptSiteDebug64 *This,
1555         DWORDLONG dwSourceContext,
1556         ULONG uCharacterOffset,
1557         ULONG uNumChars,
1558         IDebugDocumentContext **ppsc);
1559 
1560     HRESULT (STDMETHODCALLTYPE *GetApplication)(
1561         IActiveScriptSiteDebug64 *This,
1562         IDebugApplication64 **ppda);
1563 
1564     HRESULT (STDMETHODCALLTYPE *GetRootApplicationNode)(
1565         IActiveScriptSiteDebug64 *This,
1566         IDebugApplicationNode **ppdanRoot);
1567 
1568     HRESULT (STDMETHODCALLTYPE *OnScriptErrorDebug)(
1569         IActiveScriptSiteDebug64 *This,
1570         IActiveScriptErrorDebug *pErrorDebug,
1571         WINBOOL *pfEnterDebugger,
1572         WINBOOL *pfCallOnScriptErrorWhenContinuing);
1573 
1574     END_INTERFACE
1575 } IActiveScriptSiteDebug64Vtbl;
1576 
1577 interface IActiveScriptSiteDebug64 {
1578     CONST_VTBL IActiveScriptSiteDebug64Vtbl* lpVtbl;
1579 };
1580 
1581 #ifdef COBJMACROS
1582 #ifndef WIDL_C_INLINE_WRAPPERS
1583 /*** IUnknown methods ***/
1584 #define IActiveScriptSiteDebug64_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1585 #define IActiveScriptSiteDebug64_AddRef(This) (This)->lpVtbl->AddRef(This)
1586 #define IActiveScriptSiteDebug64_Release(This) (This)->lpVtbl->Release(This)
1587 /*** IActiveScriptSiteDebug64 methods ***/
1588 #define IActiveScriptSiteDebug64_GetDocumentContextFromPosition(This,dwSourceContext,uCharacterOffset,uNumChars,ppsc) (This)->lpVtbl->GetDocumentContextFromPosition(This,dwSourceContext,uCharacterOffset,uNumChars,ppsc)
1589 #define IActiveScriptSiteDebug64_GetApplication(This,ppda) (This)->lpVtbl->GetApplication(This,ppda)
1590 #define IActiveScriptSiteDebug64_GetRootApplicationNode(This,ppdanRoot) (This)->lpVtbl->GetRootApplicationNode(This,ppdanRoot)
1591 #define IActiveScriptSiteDebug64_OnScriptErrorDebug(This,pErrorDebug,pfEnterDebugger,pfCallOnScriptErrorWhenContinuing) (This)->lpVtbl->OnScriptErrorDebug(This,pErrorDebug,pfEnterDebugger,pfCallOnScriptErrorWhenContinuing)
1592 #else
1593 /*** IUnknown methods ***/
1594 static FORCEINLINE HRESULT IActiveScriptSiteDebug64_QueryInterface(IActiveScriptSiteDebug64* This,REFIID riid,void **ppvObject) {
1595     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1596 }
1597 static FORCEINLINE ULONG IActiveScriptSiteDebug64_AddRef(IActiveScriptSiteDebug64* This) {
1598     return This->lpVtbl->AddRef(This);
1599 }
1600 static FORCEINLINE ULONG IActiveScriptSiteDebug64_Release(IActiveScriptSiteDebug64* This) {
1601     return This->lpVtbl->Release(This);
1602 }
1603 /*** IActiveScriptSiteDebug64 methods ***/
1604 static FORCEINLINE HRESULT IActiveScriptSiteDebug64_GetDocumentContextFromPosition(IActiveScriptSiteDebug64* This,DWORDLONG dwSourceContext,ULONG uCharacterOffset,ULONG uNumChars,IDebugDocumentContext **ppsc) {
1605     return This->lpVtbl->GetDocumentContextFromPosition(This,dwSourceContext,uCharacterOffset,uNumChars,ppsc);
1606 }
1607 static FORCEINLINE HRESULT IActiveScriptSiteDebug64_GetApplication(IActiveScriptSiteDebug64* This,IDebugApplication64 **ppda) {
1608     return This->lpVtbl->GetApplication(This,ppda);
1609 }
1610 static FORCEINLINE HRESULT IActiveScriptSiteDebug64_GetRootApplicationNode(IActiveScriptSiteDebug64* This,IDebugApplicationNode **ppdanRoot) {
1611     return This->lpVtbl->GetRootApplicationNode(This,ppdanRoot);
1612 }
1613 static FORCEINLINE HRESULT IActiveScriptSiteDebug64_OnScriptErrorDebug(IActiveScriptSiteDebug64* This,IActiveScriptErrorDebug *pErrorDebug,WINBOOL *pfEnterDebugger,WINBOOL *pfCallOnScriptErrorWhenContinuing) {
1614     return This->lpVtbl->OnScriptErrorDebug(This,pErrorDebug,pfEnterDebugger,pfCallOnScriptErrorWhenContinuing);
1615 }
1616 #endif
1617 #endif
1618 
1619 #endif
1620 
1621 
1622 #endif  /* __IActiveScriptSiteDebug64_INTERFACE_DEFINED__ */
1623 
1624 /*****************************************************************************
1625  * IActiveScriptSiteDebugEx interface
1626  */
1627 #ifndef __IActiveScriptSiteDebugEx_INTERFACE_DEFINED__
1628 #define __IActiveScriptSiteDebugEx_INTERFACE_DEFINED__
1629 
1630 DEFINE_GUID(IID_IActiveScriptSiteDebugEx, 0xbb722ccb, 0x6ad2, 0x41c6, 0xb7,0x80, 0xaf,0x9c,0x03,0xee,0x69,0xf5);
1631 #if defined(__cplusplus) && !defined(CINTERFACE)
1632 MIDL_INTERFACE("bb722ccb-6ad2-41c6-b780-af9c03ee69f5")
1633 IActiveScriptSiteDebugEx : public IUnknown
1634 {
1635     virtual HRESULT STDMETHODCALLTYPE OnCanNotJITScriptErrorDebug(
1636         IActiveScriptErrorDebug *pErrorDebug,
1637         WINBOOL *pfCallOnScriptErrorWhenContinuing) = 0;
1638 
1639 };
1640 #ifdef __CRT_UUID_DECL
1641 __CRT_UUID_DECL(IActiveScriptSiteDebugEx, 0xbb722ccb, 0x6ad2, 0x41c6, 0xb7,0x80, 0xaf,0x9c,0x03,0xee,0x69,0xf5)
1642 #endif
1643 #else
1644 typedef struct IActiveScriptSiteDebugExVtbl {
1645     BEGIN_INTERFACE
1646 
1647     /*** IUnknown methods ***/
1648     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1649         IActiveScriptSiteDebugEx *This,
1650         REFIID riid,
1651         void **ppvObject);
1652 
1653     ULONG (STDMETHODCALLTYPE *AddRef)(
1654         IActiveScriptSiteDebugEx *This);
1655 
1656     ULONG (STDMETHODCALLTYPE *Release)(
1657         IActiveScriptSiteDebugEx *This);
1658 
1659     /*** IActiveScriptSiteDebugEx methods ***/
1660     HRESULT (STDMETHODCALLTYPE *OnCanNotJITScriptErrorDebug)(
1661         IActiveScriptSiteDebugEx *This,
1662         IActiveScriptErrorDebug *pErrorDebug,
1663         WINBOOL *pfCallOnScriptErrorWhenContinuing);
1664 
1665     END_INTERFACE
1666 } IActiveScriptSiteDebugExVtbl;
1667 
1668 interface IActiveScriptSiteDebugEx {
1669     CONST_VTBL IActiveScriptSiteDebugExVtbl* lpVtbl;
1670 };
1671 
1672 #ifdef COBJMACROS
1673 #ifndef WIDL_C_INLINE_WRAPPERS
1674 /*** IUnknown methods ***/
1675 #define IActiveScriptSiteDebugEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1676 #define IActiveScriptSiteDebugEx_AddRef(This) (This)->lpVtbl->AddRef(This)
1677 #define IActiveScriptSiteDebugEx_Release(This) (This)->lpVtbl->Release(This)
1678 /*** IActiveScriptSiteDebugEx methods ***/
1679 #define IActiveScriptSiteDebugEx_OnCanNotJITScriptErrorDebug(This,pErrorDebug,pfCallOnScriptErrorWhenContinuing) (This)->lpVtbl->OnCanNotJITScriptErrorDebug(This,pErrorDebug,pfCallOnScriptErrorWhenContinuing)
1680 #else
1681 /*** IUnknown methods ***/
1682 static FORCEINLINE HRESULT IActiveScriptSiteDebugEx_QueryInterface(IActiveScriptSiteDebugEx* This,REFIID riid,void **ppvObject) {
1683     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1684 }
1685 static FORCEINLINE ULONG IActiveScriptSiteDebugEx_AddRef(IActiveScriptSiteDebugEx* This) {
1686     return This->lpVtbl->AddRef(This);
1687 }
1688 static FORCEINLINE ULONG IActiveScriptSiteDebugEx_Release(IActiveScriptSiteDebugEx* This) {
1689     return This->lpVtbl->Release(This);
1690 }
1691 /*** IActiveScriptSiteDebugEx methods ***/
1692 static FORCEINLINE HRESULT IActiveScriptSiteDebugEx_OnCanNotJITScriptErrorDebug(IActiveScriptSiteDebugEx* This,IActiveScriptErrorDebug *pErrorDebug,WINBOOL *pfCallOnScriptErrorWhenContinuing) {
1693     return This->lpVtbl->OnCanNotJITScriptErrorDebug(This,pErrorDebug,pfCallOnScriptErrorWhenContinuing);
1694 }
1695 #endif
1696 #endif
1697 
1698 #endif
1699 
1700 
1701 #endif  /* __IActiveScriptSiteDebugEx_INTERFACE_DEFINED__ */
1702 
1703 /*****************************************************************************
1704  * IActiveScriptErrorDebug interface
1705  */
1706 #ifndef __IActiveScriptErrorDebug_INTERFACE_DEFINED__
1707 #define __IActiveScriptErrorDebug_INTERFACE_DEFINED__
1708 
1709 DEFINE_GUID(IID_IActiveScriptErrorDebug, 0x51973c12, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
1710 #if defined(__cplusplus) && !defined(CINTERFACE)
1711 MIDL_INTERFACE("51973c12-cb0c-11d0-b5c9-00a0244a0e7a")
1712 IActiveScriptErrorDebug : public IActiveScriptError
1713 {
1714     virtual HRESULT STDMETHODCALLTYPE GetDocumentContext(
1715         IDebugDocumentContext **ppssc) = 0;
1716 
1717     virtual HRESULT STDMETHODCALLTYPE GetStackFrame(
1718         IDebugStackFrame **ppdsf) = 0;
1719 
1720 };
1721 #ifdef __CRT_UUID_DECL
1722 __CRT_UUID_DECL(IActiveScriptErrorDebug, 0x51973c12, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
1723 #endif
1724 #else
1725 typedef struct IActiveScriptErrorDebugVtbl {
1726     BEGIN_INTERFACE
1727 
1728     /*** IUnknown methods ***/
1729     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1730         IActiveScriptErrorDebug *This,
1731         REFIID riid,
1732         void **ppvObject);
1733 
1734     ULONG (STDMETHODCALLTYPE *AddRef)(
1735         IActiveScriptErrorDebug *This);
1736 
1737     ULONG (STDMETHODCALLTYPE *Release)(
1738         IActiveScriptErrorDebug *This);
1739 
1740     /*** IActiveScriptError methods ***/
1741     HRESULT (STDMETHODCALLTYPE *GetExceptionInfo)(
1742         IActiveScriptErrorDebug *This,
1743         EXCEPINFO *pexcepinfo);
1744 
1745     HRESULT (STDMETHODCALLTYPE *GetSourcePosition)(
1746         IActiveScriptErrorDebug *This,
1747         DWORD *pdwSourceContext,
1748         ULONG *pulLineNumber,
1749         LONG *plCharacterPosition);
1750 
1751     HRESULT (STDMETHODCALLTYPE *GetSourceLineText)(
1752         IActiveScriptErrorDebug *This,
1753         BSTR *pbstrSourceLine);
1754 
1755     /*** IActiveScriptErrorDebug methods ***/
1756     HRESULT (STDMETHODCALLTYPE *GetDocumentContext)(
1757         IActiveScriptErrorDebug *This,
1758         IDebugDocumentContext **ppssc);
1759 
1760     HRESULT (STDMETHODCALLTYPE *GetStackFrame)(
1761         IActiveScriptErrorDebug *This,
1762         IDebugStackFrame **ppdsf);
1763 
1764     END_INTERFACE
1765 } IActiveScriptErrorDebugVtbl;
1766 
1767 interface IActiveScriptErrorDebug {
1768     CONST_VTBL IActiveScriptErrorDebugVtbl* lpVtbl;
1769 };
1770 
1771 #ifdef COBJMACROS
1772 #ifndef WIDL_C_INLINE_WRAPPERS
1773 /*** IUnknown methods ***/
1774 #define IActiveScriptErrorDebug_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1775 #define IActiveScriptErrorDebug_AddRef(This) (This)->lpVtbl->AddRef(This)
1776 #define IActiveScriptErrorDebug_Release(This) (This)->lpVtbl->Release(This)
1777 /*** IActiveScriptError methods ***/
1778 #define IActiveScriptErrorDebug_GetExceptionInfo(This,pexcepinfo) (This)->lpVtbl->GetExceptionInfo(This,pexcepinfo)
1779 #define IActiveScriptErrorDebug_GetSourcePosition(This,pdwSourceContext,pulLineNumber,plCharacterPosition) (This)->lpVtbl->GetSourcePosition(This,pdwSourceContext,pulLineNumber,plCharacterPosition)
1780 #define IActiveScriptErrorDebug_GetSourceLineText(This,pbstrSourceLine) (This)->lpVtbl->GetSourceLineText(This,pbstrSourceLine)
1781 /*** IActiveScriptErrorDebug methods ***/
1782 #define IActiveScriptErrorDebug_GetDocumentContext(This,ppssc) (This)->lpVtbl->GetDocumentContext(This,ppssc)
1783 #define IActiveScriptErrorDebug_GetStackFrame(This,ppdsf) (This)->lpVtbl->GetStackFrame(This,ppdsf)
1784 #else
1785 /*** IUnknown methods ***/
1786 static FORCEINLINE HRESULT IActiveScriptErrorDebug_QueryInterface(IActiveScriptErrorDebug* This,REFIID riid,void **ppvObject) {
1787     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1788 }
1789 static FORCEINLINE ULONG IActiveScriptErrorDebug_AddRef(IActiveScriptErrorDebug* This) {
1790     return This->lpVtbl->AddRef(This);
1791 }
1792 static FORCEINLINE ULONG IActiveScriptErrorDebug_Release(IActiveScriptErrorDebug* This) {
1793     return This->lpVtbl->Release(This);
1794 }
1795 /*** IActiveScriptError methods ***/
1796 static FORCEINLINE HRESULT IActiveScriptErrorDebug_GetExceptionInfo(IActiveScriptErrorDebug* This,EXCEPINFO *pexcepinfo) {
1797     return This->lpVtbl->GetExceptionInfo(This,pexcepinfo);
1798 }
1799 static FORCEINLINE HRESULT IActiveScriptErrorDebug_GetSourcePosition(IActiveScriptErrorDebug* This,DWORD *pdwSourceContext,ULONG *pulLineNumber,LONG *plCharacterPosition) {
1800     return This->lpVtbl->GetSourcePosition(This,pdwSourceContext,pulLineNumber,plCharacterPosition);
1801 }
1802 static FORCEINLINE HRESULT IActiveScriptErrorDebug_GetSourceLineText(IActiveScriptErrorDebug* This,BSTR *pbstrSourceLine) {
1803     return This->lpVtbl->GetSourceLineText(This,pbstrSourceLine);
1804 }
1805 /*** IActiveScriptErrorDebug methods ***/
1806 static FORCEINLINE HRESULT IActiveScriptErrorDebug_GetDocumentContext(IActiveScriptErrorDebug* This,IDebugDocumentContext **ppssc) {
1807     return This->lpVtbl->GetDocumentContext(This,ppssc);
1808 }
1809 static FORCEINLINE HRESULT IActiveScriptErrorDebug_GetStackFrame(IActiveScriptErrorDebug* This,IDebugStackFrame **ppdsf) {
1810     return This->lpVtbl->GetStackFrame(This,ppdsf);
1811 }
1812 #endif
1813 #endif
1814 
1815 #endif
1816 
1817 
1818 #endif  /* __IActiveScriptErrorDebug_INTERFACE_DEFINED__ */
1819 
1820 /*****************************************************************************
1821  * IDebugCodeContext interface
1822  */
1823 #ifndef __IDebugCodeContext_INTERFACE_DEFINED__
1824 #define __IDebugCodeContext_INTERFACE_DEFINED__
1825 
1826 DEFINE_GUID(IID_IDebugCodeContext, 0x51973c13, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
1827 #if defined(__cplusplus) && !defined(CINTERFACE)
1828 MIDL_INTERFACE("51973c13-cb0c-11d0-b5c9-00a0244a0e7a")
1829 IDebugCodeContext : public IUnknown
1830 {
1831     virtual HRESULT STDMETHODCALLTYPE GetDocumentContext(
1832         IDebugDocumentContext **ppsc) = 0;
1833 
1834     virtual HRESULT STDMETHODCALLTYPE SetBreakPoint(
1835         BREAKPOINT_STATE bps) = 0;
1836 
1837 };
1838 #ifdef __CRT_UUID_DECL
1839 __CRT_UUID_DECL(IDebugCodeContext, 0x51973c13, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
1840 #endif
1841 #else
1842 typedef struct IDebugCodeContextVtbl {
1843     BEGIN_INTERFACE
1844 
1845     /*** IUnknown methods ***/
1846     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1847         IDebugCodeContext *This,
1848         REFIID riid,
1849         void **ppvObject);
1850 
1851     ULONG (STDMETHODCALLTYPE *AddRef)(
1852         IDebugCodeContext *This);
1853 
1854     ULONG (STDMETHODCALLTYPE *Release)(
1855         IDebugCodeContext *This);
1856 
1857     /*** IDebugCodeContext methods ***/
1858     HRESULT (STDMETHODCALLTYPE *GetDocumentContext)(
1859         IDebugCodeContext *This,
1860         IDebugDocumentContext **ppsc);
1861 
1862     HRESULT (STDMETHODCALLTYPE *SetBreakPoint)(
1863         IDebugCodeContext *This,
1864         BREAKPOINT_STATE bps);
1865 
1866     END_INTERFACE
1867 } IDebugCodeContextVtbl;
1868 
1869 interface IDebugCodeContext {
1870     CONST_VTBL IDebugCodeContextVtbl* lpVtbl;
1871 };
1872 
1873 #ifdef COBJMACROS
1874 #ifndef WIDL_C_INLINE_WRAPPERS
1875 /*** IUnknown methods ***/
1876 #define IDebugCodeContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1877 #define IDebugCodeContext_AddRef(This) (This)->lpVtbl->AddRef(This)
1878 #define IDebugCodeContext_Release(This) (This)->lpVtbl->Release(This)
1879 /*** IDebugCodeContext methods ***/
1880 #define IDebugCodeContext_GetDocumentContext(This,ppsc) (This)->lpVtbl->GetDocumentContext(This,ppsc)
1881 #define IDebugCodeContext_SetBreakPoint(This,bps) (This)->lpVtbl->SetBreakPoint(This,bps)
1882 #else
1883 /*** IUnknown methods ***/
1884 static FORCEINLINE HRESULT IDebugCodeContext_QueryInterface(IDebugCodeContext* This,REFIID riid,void **ppvObject) {
1885     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1886 }
1887 static FORCEINLINE ULONG IDebugCodeContext_AddRef(IDebugCodeContext* This) {
1888     return This->lpVtbl->AddRef(This);
1889 }
1890 static FORCEINLINE ULONG IDebugCodeContext_Release(IDebugCodeContext* This) {
1891     return This->lpVtbl->Release(This);
1892 }
1893 /*** IDebugCodeContext methods ***/
1894 static FORCEINLINE HRESULT IDebugCodeContext_GetDocumentContext(IDebugCodeContext* This,IDebugDocumentContext **ppsc) {
1895     return This->lpVtbl->GetDocumentContext(This,ppsc);
1896 }
1897 static FORCEINLINE HRESULT IDebugCodeContext_SetBreakPoint(IDebugCodeContext* This,BREAKPOINT_STATE bps) {
1898     return This->lpVtbl->SetBreakPoint(This,bps);
1899 }
1900 #endif
1901 #endif
1902 
1903 #endif
1904 
1905 
1906 #endif  /* __IDebugCodeContext_INTERFACE_DEFINED__ */
1907 
1908 /*****************************************************************************
1909  * IDebugExpression interface
1910  */
1911 #ifndef __IDebugExpression_INTERFACE_DEFINED__
1912 #define __IDebugExpression_INTERFACE_DEFINED__
1913 
1914 DEFINE_GUID(IID_IDebugExpression, 0x51973c14, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
1915 #if defined(__cplusplus) && !defined(CINTERFACE)
1916 MIDL_INTERFACE("51973c14-cb0c-11d0-b5c9-00a0244a0e7a")
1917 IDebugExpression : public IUnknown
1918 {
1919     virtual HRESULT STDMETHODCALLTYPE Start(
1920         IDebugExpressionCallBack *pdecb) = 0;
1921 
1922     virtual HRESULT STDMETHODCALLTYPE Abort(
1923         ) = 0;
1924 
1925     virtual HRESULT STDMETHODCALLTYPE QueryIsComplete(
1926         ) = 0;
1927 
1928     virtual HRESULT STDMETHODCALLTYPE GetResultAsString(
1929         HRESULT *phrResult,
1930         BSTR *pbstrResult) = 0;
1931 
1932     virtual HRESULT STDMETHODCALLTYPE GetResultAsDebugProperty(
1933         HRESULT *phrResult,
1934         IDebugProperty **ppdp) = 0;
1935 
1936 };
1937 #ifdef __CRT_UUID_DECL
1938 __CRT_UUID_DECL(IDebugExpression, 0x51973c14, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
1939 #endif
1940 #else
1941 typedef struct IDebugExpressionVtbl {
1942     BEGIN_INTERFACE
1943 
1944     /*** IUnknown methods ***/
1945     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1946         IDebugExpression *This,
1947         REFIID riid,
1948         void **ppvObject);
1949 
1950     ULONG (STDMETHODCALLTYPE *AddRef)(
1951         IDebugExpression *This);
1952 
1953     ULONG (STDMETHODCALLTYPE *Release)(
1954         IDebugExpression *This);
1955 
1956     /*** IDebugExpression methods ***/
1957     HRESULT (STDMETHODCALLTYPE *Start)(
1958         IDebugExpression *This,
1959         IDebugExpressionCallBack *pdecb);
1960 
1961     HRESULT (STDMETHODCALLTYPE *Abort)(
1962         IDebugExpression *This);
1963 
1964     HRESULT (STDMETHODCALLTYPE *QueryIsComplete)(
1965         IDebugExpression *This);
1966 
1967     HRESULT (STDMETHODCALLTYPE *GetResultAsString)(
1968         IDebugExpression *This,
1969         HRESULT *phrResult,
1970         BSTR *pbstrResult);
1971 
1972     HRESULT (STDMETHODCALLTYPE *GetResultAsDebugProperty)(
1973         IDebugExpression *This,
1974         HRESULT *phrResult,
1975         IDebugProperty **ppdp);
1976 
1977     END_INTERFACE
1978 } IDebugExpressionVtbl;
1979 
1980 interface IDebugExpression {
1981     CONST_VTBL IDebugExpressionVtbl* lpVtbl;
1982 };
1983 
1984 #ifdef COBJMACROS
1985 #ifndef WIDL_C_INLINE_WRAPPERS
1986 /*** IUnknown methods ***/
1987 #define IDebugExpression_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1988 #define IDebugExpression_AddRef(This) (This)->lpVtbl->AddRef(This)
1989 #define IDebugExpression_Release(This) (This)->lpVtbl->Release(This)
1990 /*** IDebugExpression methods ***/
1991 #define IDebugExpression_Start(This,pdecb) (This)->lpVtbl->Start(This,pdecb)
1992 #define IDebugExpression_Abort(This) (This)->lpVtbl->Abort(This)
1993 #define IDebugExpression_QueryIsComplete(This) (This)->lpVtbl->QueryIsComplete(This)
1994 #define IDebugExpression_GetResultAsString(This,phrResult,pbstrResult) (This)->lpVtbl->GetResultAsString(This,phrResult,pbstrResult)
1995 #define IDebugExpression_GetResultAsDebugProperty(This,phrResult,ppdp) (This)->lpVtbl->GetResultAsDebugProperty(This,phrResult,ppdp)
1996 #else
1997 /*** IUnknown methods ***/
1998 static FORCEINLINE HRESULT IDebugExpression_QueryInterface(IDebugExpression* This,REFIID riid,void **ppvObject) {
1999     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2000 }
2001 static FORCEINLINE ULONG IDebugExpression_AddRef(IDebugExpression* This) {
2002     return This->lpVtbl->AddRef(This);
2003 }
2004 static FORCEINLINE ULONG IDebugExpression_Release(IDebugExpression* This) {
2005     return This->lpVtbl->Release(This);
2006 }
2007 /*** IDebugExpression methods ***/
2008 static FORCEINLINE HRESULT IDebugExpression_Start(IDebugExpression* This,IDebugExpressionCallBack *pdecb) {
2009     return This->lpVtbl->Start(This,pdecb);
2010 }
2011 static FORCEINLINE HRESULT IDebugExpression_Abort(IDebugExpression* This) {
2012     return This->lpVtbl->Abort(This);
2013 }
2014 static FORCEINLINE HRESULT IDebugExpression_QueryIsComplete(IDebugExpression* This) {
2015     return This->lpVtbl->QueryIsComplete(This);
2016 }
2017 static FORCEINLINE HRESULT IDebugExpression_GetResultAsString(IDebugExpression* This,HRESULT *phrResult,BSTR *pbstrResult) {
2018     return This->lpVtbl->GetResultAsString(This,phrResult,pbstrResult);
2019 }
2020 static FORCEINLINE HRESULT IDebugExpression_GetResultAsDebugProperty(IDebugExpression* This,HRESULT *phrResult,IDebugProperty **ppdp) {
2021     return This->lpVtbl->GetResultAsDebugProperty(This,phrResult,ppdp);
2022 }
2023 #endif
2024 #endif
2025 
2026 #endif
2027 
2028 
2029 #endif  /* __IDebugExpression_INTERFACE_DEFINED__ */
2030 
2031 /*****************************************************************************
2032  * IDebugExpressionContext interface
2033  */
2034 #ifndef __IDebugExpressionContext_INTERFACE_DEFINED__
2035 #define __IDebugExpressionContext_INTERFACE_DEFINED__
2036 
2037 DEFINE_GUID(IID_IDebugExpressionContext, 0x51973c15, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
2038 #if defined(__cplusplus) && !defined(CINTERFACE)
2039 MIDL_INTERFACE("51973c15-cb0c-11d0-b5c9-00a0244a0e7a")
2040 IDebugExpressionContext : public IUnknown
2041 {
2042     virtual HRESULT STDMETHODCALLTYPE ParseLanguageText(
2043         LPCOLESTR pstrCode,
2044         UINT nRadix,
2045         LPCOLESTR pstrDelimiter,
2046         DWORD dwFlags,
2047         IDebugExpression **ppe) = 0;
2048 
2049     virtual HRESULT STDMETHODCALLTYPE GetLanguageInfo(
2050         BSTR *pbstrLanguageName,
2051         GUID *pLanguageID) = 0;
2052 
2053 };
2054 #ifdef __CRT_UUID_DECL
2055 __CRT_UUID_DECL(IDebugExpressionContext, 0x51973c15, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
2056 #endif
2057 #else
2058 typedef struct IDebugExpressionContextVtbl {
2059     BEGIN_INTERFACE
2060 
2061     /*** IUnknown methods ***/
2062     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2063         IDebugExpressionContext *This,
2064         REFIID riid,
2065         void **ppvObject);
2066 
2067     ULONG (STDMETHODCALLTYPE *AddRef)(
2068         IDebugExpressionContext *This);
2069 
2070     ULONG (STDMETHODCALLTYPE *Release)(
2071         IDebugExpressionContext *This);
2072 
2073     /*** IDebugExpressionContext methods ***/
2074     HRESULT (STDMETHODCALLTYPE *ParseLanguageText)(
2075         IDebugExpressionContext *This,
2076         LPCOLESTR pstrCode,
2077         UINT nRadix,
2078         LPCOLESTR pstrDelimiter,
2079         DWORD dwFlags,
2080         IDebugExpression **ppe);
2081 
2082     HRESULT (STDMETHODCALLTYPE *GetLanguageInfo)(
2083         IDebugExpressionContext *This,
2084         BSTR *pbstrLanguageName,
2085         GUID *pLanguageID);
2086 
2087     END_INTERFACE
2088 } IDebugExpressionContextVtbl;
2089 
2090 interface IDebugExpressionContext {
2091     CONST_VTBL IDebugExpressionContextVtbl* lpVtbl;
2092 };
2093 
2094 #ifdef COBJMACROS
2095 #ifndef WIDL_C_INLINE_WRAPPERS
2096 /*** IUnknown methods ***/
2097 #define IDebugExpressionContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2098 #define IDebugExpressionContext_AddRef(This) (This)->lpVtbl->AddRef(This)
2099 #define IDebugExpressionContext_Release(This) (This)->lpVtbl->Release(This)
2100 /*** IDebugExpressionContext methods ***/
2101 #define IDebugExpressionContext_ParseLanguageText(This,pstrCode,nRadix,pstrDelimiter,dwFlags,ppe) (This)->lpVtbl->ParseLanguageText(This,pstrCode,nRadix,pstrDelimiter,dwFlags,ppe)
2102 #define IDebugExpressionContext_GetLanguageInfo(This,pbstrLanguageName,pLanguageID) (This)->lpVtbl->GetLanguageInfo(This,pbstrLanguageName,pLanguageID)
2103 #else
2104 /*** IUnknown methods ***/
2105 static FORCEINLINE HRESULT IDebugExpressionContext_QueryInterface(IDebugExpressionContext* This,REFIID riid,void **ppvObject) {
2106     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2107 }
2108 static FORCEINLINE ULONG IDebugExpressionContext_AddRef(IDebugExpressionContext* This) {
2109     return This->lpVtbl->AddRef(This);
2110 }
2111 static FORCEINLINE ULONG IDebugExpressionContext_Release(IDebugExpressionContext* This) {
2112     return This->lpVtbl->Release(This);
2113 }
2114 /*** IDebugExpressionContext methods ***/
2115 static FORCEINLINE HRESULT IDebugExpressionContext_ParseLanguageText(IDebugExpressionContext* This,LPCOLESTR pstrCode,UINT nRadix,LPCOLESTR pstrDelimiter,DWORD dwFlags,IDebugExpression **ppe) {
2116     return This->lpVtbl->ParseLanguageText(This,pstrCode,nRadix,pstrDelimiter,dwFlags,ppe);
2117 }
2118 static FORCEINLINE HRESULT IDebugExpressionContext_GetLanguageInfo(IDebugExpressionContext* This,BSTR *pbstrLanguageName,GUID *pLanguageID) {
2119     return This->lpVtbl->GetLanguageInfo(This,pbstrLanguageName,pLanguageID);
2120 }
2121 #endif
2122 #endif
2123 
2124 #endif
2125 
2126 
2127 #endif  /* __IDebugExpressionContext_INTERFACE_DEFINED__ */
2128 
2129 /*****************************************************************************
2130  * IDebugExpressionCallBack interface
2131  */
2132 #ifndef __IDebugExpressionCallBack_INTERFACE_DEFINED__
2133 #define __IDebugExpressionCallBack_INTERFACE_DEFINED__
2134 
2135 DEFINE_GUID(IID_IDebugExpressionCallBack, 0x51973c16, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
2136 #if defined(__cplusplus) && !defined(CINTERFACE)
2137 MIDL_INTERFACE("51973c16-cb0c-11d0-b5c9-00a0244a0e7a")
2138 IDebugExpressionCallBack : public IUnknown
2139 {
2140     virtual HRESULT STDMETHODCALLTYPE onComplete(
2141         ) = 0;
2142 
2143 };
2144 #ifdef __CRT_UUID_DECL
2145 __CRT_UUID_DECL(IDebugExpressionCallBack, 0x51973c16, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
2146 #endif
2147 #else
2148 typedef struct IDebugExpressionCallBackVtbl {
2149     BEGIN_INTERFACE
2150 
2151     /*** IUnknown methods ***/
2152     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2153         IDebugExpressionCallBack *This,
2154         REFIID riid,
2155         void **ppvObject);
2156 
2157     ULONG (STDMETHODCALLTYPE *AddRef)(
2158         IDebugExpressionCallBack *This);
2159 
2160     ULONG (STDMETHODCALLTYPE *Release)(
2161         IDebugExpressionCallBack *This);
2162 
2163     /*** IDebugExpressionCallBack methods ***/
2164     HRESULT (STDMETHODCALLTYPE *onComplete)(
2165         IDebugExpressionCallBack *This);
2166 
2167     END_INTERFACE
2168 } IDebugExpressionCallBackVtbl;
2169 
2170 interface IDebugExpressionCallBack {
2171     CONST_VTBL IDebugExpressionCallBackVtbl* lpVtbl;
2172 };
2173 
2174 #ifdef COBJMACROS
2175 #ifndef WIDL_C_INLINE_WRAPPERS
2176 /*** IUnknown methods ***/
2177 #define IDebugExpressionCallBack_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2178 #define IDebugExpressionCallBack_AddRef(This) (This)->lpVtbl->AddRef(This)
2179 #define IDebugExpressionCallBack_Release(This) (This)->lpVtbl->Release(This)
2180 /*** IDebugExpressionCallBack methods ***/
2181 #define IDebugExpressionCallBack_onComplete(This) (This)->lpVtbl->onComplete(This)
2182 #else
2183 /*** IUnknown methods ***/
2184 static FORCEINLINE HRESULT IDebugExpressionCallBack_QueryInterface(IDebugExpressionCallBack* This,REFIID riid,void **ppvObject) {
2185     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2186 }
2187 static FORCEINLINE ULONG IDebugExpressionCallBack_AddRef(IDebugExpressionCallBack* This) {
2188     return This->lpVtbl->AddRef(This);
2189 }
2190 static FORCEINLINE ULONG IDebugExpressionCallBack_Release(IDebugExpressionCallBack* This) {
2191     return This->lpVtbl->Release(This);
2192 }
2193 /*** IDebugExpressionCallBack methods ***/
2194 static FORCEINLINE HRESULT IDebugExpressionCallBack_onComplete(IDebugExpressionCallBack* This) {
2195     return This->lpVtbl->onComplete(This);
2196 }
2197 #endif
2198 #endif
2199 
2200 #endif
2201 
2202 
2203 #endif  /* __IDebugExpressionCallBack_INTERFACE_DEFINED__ */
2204 
2205 /*****************************************************************************
2206  * IDebugStackFrame interface
2207  */
2208 #ifndef __IDebugStackFrame_INTERFACE_DEFINED__
2209 #define __IDebugStackFrame_INTERFACE_DEFINED__
2210 
2211 DEFINE_GUID(IID_IDebugStackFrame, 0x51973c17, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
2212 #if defined(__cplusplus) && !defined(CINTERFACE)
2213 MIDL_INTERFACE("51973c17-cb0c-11d0-b5c9-00a0244a0e7a")
2214 IDebugStackFrame : public IUnknown
2215 {
2216     virtual HRESULT STDMETHODCALLTYPE GetCodeContext(
2217         IDebugCodeContext **ppcc) = 0;
2218 
2219     virtual HRESULT STDMETHODCALLTYPE GetDescriptionString(
2220         WINBOOL fLong,
2221         BSTR *pbstrDescription) = 0;
2222 
2223     virtual HRESULT STDMETHODCALLTYPE GetLanguageString(
2224         WINBOOL fLong,
2225         BSTR *pbstrLanguage) = 0;
2226 
2227     virtual HRESULT STDMETHODCALLTYPE GetThread(
2228         IDebugApplicationThread **ppat) = 0;
2229 
2230     virtual HRESULT STDMETHODCALLTYPE GetDebugProperty(
2231         IDebugProperty **ppDebugProp) = 0;
2232 
2233 };
2234 #ifdef __CRT_UUID_DECL
2235 __CRT_UUID_DECL(IDebugStackFrame, 0x51973c17, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
2236 #endif
2237 #else
2238 typedef struct IDebugStackFrameVtbl {
2239     BEGIN_INTERFACE
2240 
2241     /*** IUnknown methods ***/
2242     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2243         IDebugStackFrame *This,
2244         REFIID riid,
2245         void **ppvObject);
2246 
2247     ULONG (STDMETHODCALLTYPE *AddRef)(
2248         IDebugStackFrame *This);
2249 
2250     ULONG (STDMETHODCALLTYPE *Release)(
2251         IDebugStackFrame *This);
2252 
2253     /*** IDebugStackFrame methods ***/
2254     HRESULT (STDMETHODCALLTYPE *GetCodeContext)(
2255         IDebugStackFrame *This,
2256         IDebugCodeContext **ppcc);
2257 
2258     HRESULT (STDMETHODCALLTYPE *GetDescriptionString)(
2259         IDebugStackFrame *This,
2260         WINBOOL fLong,
2261         BSTR *pbstrDescription);
2262 
2263     HRESULT (STDMETHODCALLTYPE *GetLanguageString)(
2264         IDebugStackFrame *This,
2265         WINBOOL fLong,
2266         BSTR *pbstrLanguage);
2267 
2268     HRESULT (STDMETHODCALLTYPE *GetThread)(
2269         IDebugStackFrame *This,
2270         IDebugApplicationThread **ppat);
2271 
2272     HRESULT (STDMETHODCALLTYPE *GetDebugProperty)(
2273         IDebugStackFrame *This,
2274         IDebugProperty **ppDebugProp);
2275 
2276     END_INTERFACE
2277 } IDebugStackFrameVtbl;
2278 
2279 interface IDebugStackFrame {
2280     CONST_VTBL IDebugStackFrameVtbl* lpVtbl;
2281 };
2282 
2283 #ifdef COBJMACROS
2284 #ifndef WIDL_C_INLINE_WRAPPERS
2285 /*** IUnknown methods ***/
2286 #define IDebugStackFrame_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2287 #define IDebugStackFrame_AddRef(This) (This)->lpVtbl->AddRef(This)
2288 #define IDebugStackFrame_Release(This) (This)->lpVtbl->Release(This)
2289 /*** IDebugStackFrame methods ***/
2290 #define IDebugStackFrame_GetCodeContext(This,ppcc) (This)->lpVtbl->GetCodeContext(This,ppcc)
2291 #define IDebugStackFrame_GetDescriptionString(This,fLong,pbstrDescription) (This)->lpVtbl->GetDescriptionString(This,fLong,pbstrDescription)
2292 #define IDebugStackFrame_GetLanguageString(This,fLong,pbstrLanguage) (This)->lpVtbl->GetLanguageString(This,fLong,pbstrLanguage)
2293 #define IDebugStackFrame_GetThread(This,ppat) (This)->lpVtbl->GetThread(This,ppat)
2294 #define IDebugStackFrame_GetDebugProperty(This,ppDebugProp) (This)->lpVtbl->GetDebugProperty(This,ppDebugProp)
2295 #else
2296 /*** IUnknown methods ***/
2297 static FORCEINLINE HRESULT IDebugStackFrame_QueryInterface(IDebugStackFrame* This,REFIID riid,void **ppvObject) {
2298     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2299 }
2300 static FORCEINLINE ULONG IDebugStackFrame_AddRef(IDebugStackFrame* This) {
2301     return This->lpVtbl->AddRef(This);
2302 }
2303 static FORCEINLINE ULONG IDebugStackFrame_Release(IDebugStackFrame* This) {
2304     return This->lpVtbl->Release(This);
2305 }
2306 /*** IDebugStackFrame methods ***/
2307 static FORCEINLINE HRESULT IDebugStackFrame_GetCodeContext(IDebugStackFrame* This,IDebugCodeContext **ppcc) {
2308     return This->lpVtbl->GetCodeContext(This,ppcc);
2309 }
2310 static FORCEINLINE HRESULT IDebugStackFrame_GetDescriptionString(IDebugStackFrame* This,WINBOOL fLong,BSTR *pbstrDescription) {
2311     return This->lpVtbl->GetDescriptionString(This,fLong,pbstrDescription);
2312 }
2313 static FORCEINLINE HRESULT IDebugStackFrame_GetLanguageString(IDebugStackFrame* This,WINBOOL fLong,BSTR *pbstrLanguage) {
2314     return This->lpVtbl->GetLanguageString(This,fLong,pbstrLanguage);
2315 }
2316 static FORCEINLINE HRESULT IDebugStackFrame_GetThread(IDebugStackFrame* This,IDebugApplicationThread **ppat) {
2317     return This->lpVtbl->GetThread(This,ppat);
2318 }
2319 static FORCEINLINE HRESULT IDebugStackFrame_GetDebugProperty(IDebugStackFrame* This,IDebugProperty **ppDebugProp) {
2320     return This->lpVtbl->GetDebugProperty(This,ppDebugProp);
2321 }
2322 #endif
2323 #endif
2324 
2325 #endif
2326 
2327 
2328 #endif  /* __IDebugStackFrame_INTERFACE_DEFINED__ */
2329 
2330 /*****************************************************************************
2331  * IDebugStackFrameSniffer interface
2332  */
2333 #ifndef __IDebugStackFrameSniffer_INTERFACE_DEFINED__
2334 #define __IDebugStackFrameSniffer_INTERFACE_DEFINED__
2335 
2336 DEFINE_GUID(IID_IDebugStackFrameSniffer, 0x51973c18, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
2337 #if defined(__cplusplus) && !defined(CINTERFACE)
2338 MIDL_INTERFACE("51973c18-cb0c-11d0-b5c9-00a0244a0e7a")
2339 IDebugStackFrameSniffer : public IUnknown
2340 {
2341     virtual HRESULT STDMETHODCALLTYPE EnumStackFrames(
2342         IEnumDebugStackFrames **ppedsf) = 0;
2343 
2344 };
2345 #ifdef __CRT_UUID_DECL
2346 __CRT_UUID_DECL(IDebugStackFrameSniffer, 0x51973c18, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
2347 #endif
2348 #else
2349 typedef struct IDebugStackFrameSnifferVtbl {
2350     BEGIN_INTERFACE
2351 
2352     /*** IUnknown methods ***/
2353     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2354         IDebugStackFrameSniffer *This,
2355         REFIID riid,
2356         void **ppvObject);
2357 
2358     ULONG (STDMETHODCALLTYPE *AddRef)(
2359         IDebugStackFrameSniffer *This);
2360 
2361     ULONG (STDMETHODCALLTYPE *Release)(
2362         IDebugStackFrameSniffer *This);
2363 
2364     /*** IDebugStackFrameSniffer methods ***/
2365     HRESULT (STDMETHODCALLTYPE *EnumStackFrames)(
2366         IDebugStackFrameSniffer *This,
2367         IEnumDebugStackFrames **ppedsf);
2368 
2369     END_INTERFACE
2370 } IDebugStackFrameSnifferVtbl;
2371 
2372 interface IDebugStackFrameSniffer {
2373     CONST_VTBL IDebugStackFrameSnifferVtbl* lpVtbl;
2374 };
2375 
2376 #ifdef COBJMACROS
2377 #ifndef WIDL_C_INLINE_WRAPPERS
2378 /*** IUnknown methods ***/
2379 #define IDebugStackFrameSniffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2380 #define IDebugStackFrameSniffer_AddRef(This) (This)->lpVtbl->AddRef(This)
2381 #define IDebugStackFrameSniffer_Release(This) (This)->lpVtbl->Release(This)
2382 /*** IDebugStackFrameSniffer methods ***/
2383 #define IDebugStackFrameSniffer_EnumStackFrames(This,ppedsf) (This)->lpVtbl->EnumStackFrames(This,ppedsf)
2384 #else
2385 /*** IUnknown methods ***/
2386 static FORCEINLINE HRESULT IDebugStackFrameSniffer_QueryInterface(IDebugStackFrameSniffer* This,REFIID riid,void **ppvObject) {
2387     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2388 }
2389 static FORCEINLINE ULONG IDebugStackFrameSniffer_AddRef(IDebugStackFrameSniffer* This) {
2390     return This->lpVtbl->AddRef(This);
2391 }
2392 static FORCEINLINE ULONG IDebugStackFrameSniffer_Release(IDebugStackFrameSniffer* This) {
2393     return This->lpVtbl->Release(This);
2394 }
2395 /*** IDebugStackFrameSniffer methods ***/
2396 static FORCEINLINE HRESULT IDebugStackFrameSniffer_EnumStackFrames(IDebugStackFrameSniffer* This,IEnumDebugStackFrames **ppedsf) {
2397     return This->lpVtbl->EnumStackFrames(This,ppedsf);
2398 }
2399 #endif
2400 #endif
2401 
2402 #endif
2403 
2404 
2405 #endif  /* __IDebugStackFrameSniffer_INTERFACE_DEFINED__ */
2406 
2407 /*****************************************************************************
2408  * IDebugStackFrameSnifferEx32 interface
2409  */
2410 #ifndef __IDebugStackFrameSnifferEx32_INTERFACE_DEFINED__
2411 #define __IDebugStackFrameSnifferEx32_INTERFACE_DEFINED__
2412 
2413 DEFINE_GUID(IID_IDebugStackFrameSnifferEx32, 0x51973c19, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
2414 #if defined(__cplusplus) && !defined(CINTERFACE)
2415 MIDL_INTERFACE("51973c19-cb0c-11d0-b5c9-00a0244a0e7a")
2416 IDebugStackFrameSnifferEx32 : public IDebugStackFrameSniffer
2417 {
2418     virtual HRESULT STDMETHODCALLTYPE EnumStackFramesEx32(
2419         DWORD dwSpMin,
2420         IEnumDebugStackFrames **ppedsf) = 0;
2421 
2422 };
2423 #ifdef __CRT_UUID_DECL
2424 __CRT_UUID_DECL(IDebugStackFrameSnifferEx32, 0x51973c19, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
2425 #endif
2426 #else
2427 typedef struct IDebugStackFrameSnifferEx32Vtbl {
2428     BEGIN_INTERFACE
2429 
2430     /*** IUnknown methods ***/
2431     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2432         IDebugStackFrameSnifferEx32 *This,
2433         REFIID riid,
2434         void **ppvObject);
2435 
2436     ULONG (STDMETHODCALLTYPE *AddRef)(
2437         IDebugStackFrameSnifferEx32 *This);
2438 
2439     ULONG (STDMETHODCALLTYPE *Release)(
2440         IDebugStackFrameSnifferEx32 *This);
2441 
2442     /*** IDebugStackFrameSniffer methods ***/
2443     HRESULT (STDMETHODCALLTYPE *EnumStackFrames)(
2444         IDebugStackFrameSnifferEx32 *This,
2445         IEnumDebugStackFrames **ppedsf);
2446 
2447     /*** IDebugStackFrameSnifferEx32 methods ***/
2448     HRESULT (STDMETHODCALLTYPE *EnumStackFramesEx32)(
2449         IDebugStackFrameSnifferEx32 *This,
2450         DWORD dwSpMin,
2451         IEnumDebugStackFrames **ppedsf);
2452 
2453     END_INTERFACE
2454 } IDebugStackFrameSnifferEx32Vtbl;
2455 
2456 interface IDebugStackFrameSnifferEx32 {
2457     CONST_VTBL IDebugStackFrameSnifferEx32Vtbl* lpVtbl;
2458 };
2459 
2460 #ifdef COBJMACROS
2461 #ifndef WIDL_C_INLINE_WRAPPERS
2462 /*** IUnknown methods ***/
2463 #define IDebugStackFrameSnifferEx32_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2464 #define IDebugStackFrameSnifferEx32_AddRef(This) (This)->lpVtbl->AddRef(This)
2465 #define IDebugStackFrameSnifferEx32_Release(This) (This)->lpVtbl->Release(This)
2466 /*** IDebugStackFrameSniffer methods ***/
2467 #define IDebugStackFrameSnifferEx32_EnumStackFrames(This,ppedsf) (This)->lpVtbl->EnumStackFrames(This,ppedsf)
2468 /*** IDebugStackFrameSnifferEx32 methods ***/
2469 #define IDebugStackFrameSnifferEx32_EnumStackFramesEx32(This,dwSpMin,ppedsf) (This)->lpVtbl->EnumStackFramesEx32(This,dwSpMin,ppedsf)
2470 #else
2471 /*** IUnknown methods ***/
2472 static FORCEINLINE HRESULT IDebugStackFrameSnifferEx32_QueryInterface(IDebugStackFrameSnifferEx32* This,REFIID riid,void **ppvObject) {
2473     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2474 }
2475 static FORCEINLINE ULONG IDebugStackFrameSnifferEx32_AddRef(IDebugStackFrameSnifferEx32* This) {
2476     return This->lpVtbl->AddRef(This);
2477 }
2478 static FORCEINLINE ULONG IDebugStackFrameSnifferEx32_Release(IDebugStackFrameSnifferEx32* This) {
2479     return This->lpVtbl->Release(This);
2480 }
2481 /*** IDebugStackFrameSniffer methods ***/
2482 static FORCEINLINE HRESULT IDebugStackFrameSnifferEx32_EnumStackFrames(IDebugStackFrameSnifferEx32* This,IEnumDebugStackFrames **ppedsf) {
2483     return This->lpVtbl->EnumStackFrames(This,ppedsf);
2484 }
2485 /*** IDebugStackFrameSnifferEx32 methods ***/
2486 static FORCEINLINE HRESULT IDebugStackFrameSnifferEx32_EnumStackFramesEx32(IDebugStackFrameSnifferEx32* This,DWORD dwSpMin,IEnumDebugStackFrames **ppedsf) {
2487     return This->lpVtbl->EnumStackFramesEx32(This,dwSpMin,ppedsf);
2488 }
2489 #endif
2490 #endif
2491 
2492 #endif
2493 
2494 
2495 #endif  /* __IDebugStackFrameSnifferEx32_INTERFACE_DEFINED__ */
2496 
2497 /*****************************************************************************
2498  * IDebugStackFrameSnifferEx64 interface
2499  */
2500 #ifndef __IDebugStackFrameSnifferEx64_INTERFACE_DEFINED__
2501 #define __IDebugStackFrameSnifferEx64_INTERFACE_DEFINED__
2502 
2503 DEFINE_GUID(IID_IDebugStackFrameSnifferEx64, 0x8cd12af4, 0x49c1, 0x4d52, 0x8d,0x8a, 0xc1,0x46,0xf4,0x75,0x81,0xaa);
2504 #if defined(__cplusplus) && !defined(CINTERFACE)
2505 MIDL_INTERFACE("8cd12af4-49c1-4d52-8d8a-c146f47581aa")
2506 IDebugStackFrameSnifferEx64 : public IDebugStackFrameSniffer
2507 {
2508     virtual HRESULT STDMETHODCALLTYPE EnumStackFramesEx64(
2509         DWORDLONG dwSpMin,
2510         IEnumDebugStackFrames64 **ppedsf) = 0;
2511 
2512 };
2513 #ifdef __CRT_UUID_DECL
2514 __CRT_UUID_DECL(IDebugStackFrameSnifferEx64, 0x8cd12af4, 0x49c1, 0x4d52, 0x8d,0x8a, 0xc1,0x46,0xf4,0x75,0x81,0xaa)
2515 #endif
2516 #else
2517 typedef struct IDebugStackFrameSnifferEx64Vtbl {
2518     BEGIN_INTERFACE
2519 
2520     /*** IUnknown methods ***/
2521     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2522         IDebugStackFrameSnifferEx64 *This,
2523         REFIID riid,
2524         void **ppvObject);
2525 
2526     ULONG (STDMETHODCALLTYPE *AddRef)(
2527         IDebugStackFrameSnifferEx64 *This);
2528 
2529     ULONG (STDMETHODCALLTYPE *Release)(
2530         IDebugStackFrameSnifferEx64 *This);
2531 
2532     /*** IDebugStackFrameSniffer methods ***/
2533     HRESULT (STDMETHODCALLTYPE *EnumStackFrames)(
2534         IDebugStackFrameSnifferEx64 *This,
2535         IEnumDebugStackFrames **ppedsf);
2536 
2537     /*** IDebugStackFrameSnifferEx64 methods ***/
2538     HRESULT (STDMETHODCALLTYPE *EnumStackFramesEx64)(
2539         IDebugStackFrameSnifferEx64 *This,
2540         DWORDLONG dwSpMin,
2541         IEnumDebugStackFrames64 **ppedsf);
2542 
2543     END_INTERFACE
2544 } IDebugStackFrameSnifferEx64Vtbl;
2545 
2546 interface IDebugStackFrameSnifferEx64 {
2547     CONST_VTBL IDebugStackFrameSnifferEx64Vtbl* lpVtbl;
2548 };
2549 
2550 #ifdef COBJMACROS
2551 #ifndef WIDL_C_INLINE_WRAPPERS
2552 /*** IUnknown methods ***/
2553 #define IDebugStackFrameSnifferEx64_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2554 #define IDebugStackFrameSnifferEx64_AddRef(This) (This)->lpVtbl->AddRef(This)
2555 #define IDebugStackFrameSnifferEx64_Release(This) (This)->lpVtbl->Release(This)
2556 /*** IDebugStackFrameSniffer methods ***/
2557 #define IDebugStackFrameSnifferEx64_EnumStackFrames(This,ppedsf) (This)->lpVtbl->EnumStackFrames(This,ppedsf)
2558 /*** IDebugStackFrameSnifferEx64 methods ***/
2559 #define IDebugStackFrameSnifferEx64_EnumStackFramesEx64(This,dwSpMin,ppedsf) (This)->lpVtbl->EnumStackFramesEx64(This,dwSpMin,ppedsf)
2560 #else
2561 /*** IUnknown methods ***/
2562 static FORCEINLINE HRESULT IDebugStackFrameSnifferEx64_QueryInterface(IDebugStackFrameSnifferEx64* This,REFIID riid,void **ppvObject) {
2563     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2564 }
2565 static FORCEINLINE ULONG IDebugStackFrameSnifferEx64_AddRef(IDebugStackFrameSnifferEx64* This) {
2566     return This->lpVtbl->AddRef(This);
2567 }
2568 static FORCEINLINE ULONG IDebugStackFrameSnifferEx64_Release(IDebugStackFrameSnifferEx64* This) {
2569     return This->lpVtbl->Release(This);
2570 }
2571 /*** IDebugStackFrameSniffer methods ***/
2572 static FORCEINLINE HRESULT IDebugStackFrameSnifferEx64_EnumStackFrames(IDebugStackFrameSnifferEx64* This,IEnumDebugStackFrames **ppedsf) {
2573     return This->lpVtbl->EnumStackFrames(This,ppedsf);
2574 }
2575 /*** IDebugStackFrameSnifferEx64 methods ***/
2576 static FORCEINLINE HRESULT IDebugStackFrameSnifferEx64_EnumStackFramesEx64(IDebugStackFrameSnifferEx64* This,DWORDLONG dwSpMin,IEnumDebugStackFrames64 **ppedsf) {
2577     return This->lpVtbl->EnumStackFramesEx64(This,dwSpMin,ppedsf);
2578 }
2579 #endif
2580 #endif
2581 
2582 #endif
2583 
2584 
2585 #endif  /* __IDebugStackFrameSnifferEx64_INTERFACE_DEFINED__ */
2586 
2587 /*****************************************************************************
2588  * IDebugSyncOperation interface
2589  */
2590 #ifndef __IDebugSyncOperation_INTERFACE_DEFINED__
2591 #define __IDebugSyncOperation_INTERFACE_DEFINED__
2592 
2593 DEFINE_GUID(IID_IDebugSyncOperation, 0x51973c1a, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
2594 #if defined(__cplusplus) && !defined(CINTERFACE)
2595 MIDL_INTERFACE("51973c1a-cb0c-11d0-b5c9-00a0244a0e7a")
2596 IDebugSyncOperation : public IUnknown
2597 {
2598     virtual HRESULT STDMETHODCALLTYPE GetTargetThread(
2599         IDebugApplicationThread **ppatTarget) = 0;
2600 
2601     virtual HRESULT STDMETHODCALLTYPE Execute(
2602         IUnknown **ppunkResult) = 0;
2603 
2604     virtual HRESULT STDMETHODCALLTYPE InProgressAbort(
2605         ) = 0;
2606 
2607 };
2608 #ifdef __CRT_UUID_DECL
2609 __CRT_UUID_DECL(IDebugSyncOperation, 0x51973c1a, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
2610 #endif
2611 #else
2612 typedef struct IDebugSyncOperationVtbl {
2613     BEGIN_INTERFACE
2614 
2615     /*** IUnknown methods ***/
2616     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2617         IDebugSyncOperation *This,
2618         REFIID riid,
2619         void **ppvObject);
2620 
2621     ULONG (STDMETHODCALLTYPE *AddRef)(
2622         IDebugSyncOperation *This);
2623 
2624     ULONG (STDMETHODCALLTYPE *Release)(
2625         IDebugSyncOperation *This);
2626 
2627     /*** IDebugSyncOperation methods ***/
2628     HRESULT (STDMETHODCALLTYPE *GetTargetThread)(
2629         IDebugSyncOperation *This,
2630         IDebugApplicationThread **ppatTarget);
2631 
2632     HRESULT (STDMETHODCALLTYPE *Execute)(
2633         IDebugSyncOperation *This,
2634         IUnknown **ppunkResult);
2635 
2636     HRESULT (STDMETHODCALLTYPE *InProgressAbort)(
2637         IDebugSyncOperation *This);
2638 
2639     END_INTERFACE
2640 } IDebugSyncOperationVtbl;
2641 
2642 interface IDebugSyncOperation {
2643     CONST_VTBL IDebugSyncOperationVtbl* lpVtbl;
2644 };
2645 
2646 #ifdef COBJMACROS
2647 #ifndef WIDL_C_INLINE_WRAPPERS
2648 /*** IUnknown methods ***/
2649 #define IDebugSyncOperation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2650 #define IDebugSyncOperation_AddRef(This) (This)->lpVtbl->AddRef(This)
2651 #define IDebugSyncOperation_Release(This) (This)->lpVtbl->Release(This)
2652 /*** IDebugSyncOperation methods ***/
2653 #define IDebugSyncOperation_GetTargetThread(This,ppatTarget) (This)->lpVtbl->GetTargetThread(This,ppatTarget)
2654 #define IDebugSyncOperation_Execute(This,ppunkResult) (This)->lpVtbl->Execute(This,ppunkResult)
2655 #define IDebugSyncOperation_InProgressAbort(This) (This)->lpVtbl->InProgressAbort(This)
2656 #else
2657 /*** IUnknown methods ***/
2658 static FORCEINLINE HRESULT IDebugSyncOperation_QueryInterface(IDebugSyncOperation* This,REFIID riid,void **ppvObject) {
2659     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2660 }
2661 static FORCEINLINE ULONG IDebugSyncOperation_AddRef(IDebugSyncOperation* This) {
2662     return This->lpVtbl->AddRef(This);
2663 }
2664 static FORCEINLINE ULONG IDebugSyncOperation_Release(IDebugSyncOperation* This) {
2665     return This->lpVtbl->Release(This);
2666 }
2667 /*** IDebugSyncOperation methods ***/
2668 static FORCEINLINE HRESULT IDebugSyncOperation_GetTargetThread(IDebugSyncOperation* This,IDebugApplicationThread **ppatTarget) {
2669     return This->lpVtbl->GetTargetThread(This,ppatTarget);
2670 }
2671 static FORCEINLINE HRESULT IDebugSyncOperation_Execute(IDebugSyncOperation* This,IUnknown **ppunkResult) {
2672     return This->lpVtbl->Execute(This,ppunkResult);
2673 }
2674 static FORCEINLINE HRESULT IDebugSyncOperation_InProgressAbort(IDebugSyncOperation* This) {
2675     return This->lpVtbl->InProgressAbort(This);
2676 }
2677 #endif
2678 #endif
2679 
2680 #endif
2681 
2682 
2683 #endif  /* __IDebugSyncOperation_INTERFACE_DEFINED__ */
2684 
2685 /*****************************************************************************
2686  * IDebugAsyncOperation interface
2687  */
2688 #ifndef __IDebugAsyncOperation_INTERFACE_DEFINED__
2689 #define __IDebugAsyncOperation_INTERFACE_DEFINED__
2690 
2691 DEFINE_GUID(IID_IDebugAsyncOperation, 0x51973c1b, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
2692 #if defined(__cplusplus) && !defined(CINTERFACE)
2693 MIDL_INTERFACE("51973c1b-cb0c-11d0-b5c9-00a0244a0e7a")
2694 IDebugAsyncOperation : public IUnknown
2695 {
2696     virtual HRESULT STDMETHODCALLTYPE GetSyncDebugOperation(
2697         IDebugSyncOperation **ppsdo) = 0;
2698 
2699     virtual HRESULT STDMETHODCALLTYPE Start(
2700         IDebugAsyncOperationCallBack *padocb) = 0;
2701 
2702     virtual HRESULT STDMETHODCALLTYPE Abort(
2703         ) = 0;
2704 
2705     virtual HRESULT STDMETHODCALLTYPE QueryIsComplete(
2706         ) = 0;
2707 
2708     virtual HRESULT STDMETHODCALLTYPE GetResult(
2709         HRESULT *phrResult,
2710         IUnknown **ppunkResult) = 0;
2711 
2712 };
2713 #ifdef __CRT_UUID_DECL
2714 __CRT_UUID_DECL(IDebugAsyncOperation, 0x51973c1b, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
2715 #endif
2716 #else
2717 typedef struct IDebugAsyncOperationVtbl {
2718     BEGIN_INTERFACE
2719 
2720     /*** IUnknown methods ***/
2721     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2722         IDebugAsyncOperation *This,
2723         REFIID riid,
2724         void **ppvObject);
2725 
2726     ULONG (STDMETHODCALLTYPE *AddRef)(
2727         IDebugAsyncOperation *This);
2728 
2729     ULONG (STDMETHODCALLTYPE *Release)(
2730         IDebugAsyncOperation *This);
2731 
2732     /*** IDebugAsyncOperation methods ***/
2733     HRESULT (STDMETHODCALLTYPE *GetSyncDebugOperation)(
2734         IDebugAsyncOperation *This,
2735         IDebugSyncOperation **ppsdo);
2736 
2737     HRESULT (STDMETHODCALLTYPE *Start)(
2738         IDebugAsyncOperation *This,
2739         IDebugAsyncOperationCallBack *padocb);
2740 
2741     HRESULT (STDMETHODCALLTYPE *Abort)(
2742         IDebugAsyncOperation *This);
2743 
2744     HRESULT (STDMETHODCALLTYPE *QueryIsComplete)(
2745         IDebugAsyncOperation *This);
2746 
2747     HRESULT (STDMETHODCALLTYPE *GetResult)(
2748         IDebugAsyncOperation *This,
2749         HRESULT *phrResult,
2750         IUnknown **ppunkResult);
2751 
2752     END_INTERFACE
2753 } IDebugAsyncOperationVtbl;
2754 
2755 interface IDebugAsyncOperation {
2756     CONST_VTBL IDebugAsyncOperationVtbl* lpVtbl;
2757 };
2758 
2759 #ifdef COBJMACROS
2760 #ifndef WIDL_C_INLINE_WRAPPERS
2761 /*** IUnknown methods ***/
2762 #define IDebugAsyncOperation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2763 #define IDebugAsyncOperation_AddRef(This) (This)->lpVtbl->AddRef(This)
2764 #define IDebugAsyncOperation_Release(This) (This)->lpVtbl->Release(This)
2765 /*** IDebugAsyncOperation methods ***/
2766 #define IDebugAsyncOperation_GetSyncDebugOperation(This,ppsdo) (This)->lpVtbl->GetSyncDebugOperation(This,ppsdo)
2767 #define IDebugAsyncOperation_Start(This,padocb) (This)->lpVtbl->Start(This,padocb)
2768 #define IDebugAsyncOperation_Abort(This) (This)->lpVtbl->Abort(This)
2769 #define IDebugAsyncOperation_QueryIsComplete(This) (This)->lpVtbl->QueryIsComplete(This)
2770 #define IDebugAsyncOperation_GetResult(This,phrResult,ppunkResult) (This)->lpVtbl->GetResult(This,phrResult,ppunkResult)
2771 #else
2772 /*** IUnknown methods ***/
2773 static FORCEINLINE HRESULT IDebugAsyncOperation_QueryInterface(IDebugAsyncOperation* This,REFIID riid,void **ppvObject) {
2774     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2775 }
2776 static FORCEINLINE ULONG IDebugAsyncOperation_AddRef(IDebugAsyncOperation* This) {
2777     return This->lpVtbl->AddRef(This);
2778 }
2779 static FORCEINLINE ULONG IDebugAsyncOperation_Release(IDebugAsyncOperation* This) {
2780     return This->lpVtbl->Release(This);
2781 }
2782 /*** IDebugAsyncOperation methods ***/
2783 static FORCEINLINE HRESULT IDebugAsyncOperation_GetSyncDebugOperation(IDebugAsyncOperation* This,IDebugSyncOperation **ppsdo) {
2784     return This->lpVtbl->GetSyncDebugOperation(This,ppsdo);
2785 }
2786 static FORCEINLINE HRESULT IDebugAsyncOperation_Start(IDebugAsyncOperation* This,IDebugAsyncOperationCallBack *padocb) {
2787     return This->lpVtbl->Start(This,padocb);
2788 }
2789 static FORCEINLINE HRESULT IDebugAsyncOperation_Abort(IDebugAsyncOperation* This) {
2790     return This->lpVtbl->Abort(This);
2791 }
2792 static FORCEINLINE HRESULT IDebugAsyncOperation_QueryIsComplete(IDebugAsyncOperation* This) {
2793     return This->lpVtbl->QueryIsComplete(This);
2794 }
2795 static FORCEINLINE HRESULT IDebugAsyncOperation_GetResult(IDebugAsyncOperation* This,HRESULT *phrResult,IUnknown **ppunkResult) {
2796     return This->lpVtbl->GetResult(This,phrResult,ppunkResult);
2797 }
2798 #endif
2799 #endif
2800 
2801 #endif
2802 
2803 
2804 #endif  /* __IDebugAsyncOperation_INTERFACE_DEFINED__ */
2805 
2806 /*****************************************************************************
2807  * IDebugAsyncOperationCallBack interface
2808  */
2809 #ifndef __IDebugAsyncOperationCallBack_INTERFACE_DEFINED__
2810 #define __IDebugAsyncOperationCallBack_INTERFACE_DEFINED__
2811 
2812 DEFINE_GUID(IID_IDebugAsyncOperationCallBack, 0x51973c1c, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
2813 #if defined(__cplusplus) && !defined(CINTERFACE)
2814 MIDL_INTERFACE("51973c1c-cb0c-11d0-b5c9-00a0244a0e7a")
2815 IDebugAsyncOperationCallBack : public IUnknown
2816 {
2817     virtual HRESULT STDMETHODCALLTYPE onComplete(
2818         ) = 0;
2819 
2820 };
2821 #ifdef __CRT_UUID_DECL
2822 __CRT_UUID_DECL(IDebugAsyncOperationCallBack, 0x51973c1c, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
2823 #endif
2824 #else
2825 typedef struct IDebugAsyncOperationCallBackVtbl {
2826     BEGIN_INTERFACE
2827 
2828     /*** IUnknown methods ***/
2829     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2830         IDebugAsyncOperationCallBack *This,
2831         REFIID riid,
2832         void **ppvObject);
2833 
2834     ULONG (STDMETHODCALLTYPE *AddRef)(
2835         IDebugAsyncOperationCallBack *This);
2836 
2837     ULONG (STDMETHODCALLTYPE *Release)(
2838         IDebugAsyncOperationCallBack *This);
2839 
2840     /*** IDebugAsyncOperationCallBack methods ***/
2841     HRESULT (STDMETHODCALLTYPE *onComplete)(
2842         IDebugAsyncOperationCallBack *This);
2843 
2844     END_INTERFACE
2845 } IDebugAsyncOperationCallBackVtbl;
2846 
2847 interface IDebugAsyncOperationCallBack {
2848     CONST_VTBL IDebugAsyncOperationCallBackVtbl* lpVtbl;
2849 };
2850 
2851 #ifdef COBJMACROS
2852 #ifndef WIDL_C_INLINE_WRAPPERS
2853 /*** IUnknown methods ***/
2854 #define IDebugAsyncOperationCallBack_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2855 #define IDebugAsyncOperationCallBack_AddRef(This) (This)->lpVtbl->AddRef(This)
2856 #define IDebugAsyncOperationCallBack_Release(This) (This)->lpVtbl->Release(This)
2857 /*** IDebugAsyncOperationCallBack methods ***/
2858 #define IDebugAsyncOperationCallBack_onComplete(This) (This)->lpVtbl->onComplete(This)
2859 #else
2860 /*** IUnknown methods ***/
2861 static FORCEINLINE HRESULT IDebugAsyncOperationCallBack_QueryInterface(IDebugAsyncOperationCallBack* This,REFIID riid,void **ppvObject) {
2862     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2863 }
2864 static FORCEINLINE ULONG IDebugAsyncOperationCallBack_AddRef(IDebugAsyncOperationCallBack* This) {
2865     return This->lpVtbl->AddRef(This);
2866 }
2867 static FORCEINLINE ULONG IDebugAsyncOperationCallBack_Release(IDebugAsyncOperationCallBack* This) {
2868     return This->lpVtbl->Release(This);
2869 }
2870 /*** IDebugAsyncOperationCallBack methods ***/
2871 static FORCEINLINE HRESULT IDebugAsyncOperationCallBack_onComplete(IDebugAsyncOperationCallBack* This) {
2872     return This->lpVtbl->onComplete(This);
2873 }
2874 #endif
2875 #endif
2876 
2877 #endif
2878 
2879 
2880 #endif  /* __IDebugAsyncOperationCallBack_INTERFACE_DEFINED__ */
2881 
2882 /*****************************************************************************
2883  * IEnumDebugCodeContexts interface
2884  */
2885 #ifndef __IEnumDebugCodeContexts_INTERFACE_DEFINED__
2886 #define __IEnumDebugCodeContexts_INTERFACE_DEFINED__
2887 
2888 DEFINE_GUID(IID_IEnumDebugCodeContexts, 0x51973c1d, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
2889 #if defined(__cplusplus) && !defined(CINTERFACE)
2890 MIDL_INTERFACE("51973c1d-cb0c-11d0-b5c9-00a0244a0e7a")
2891 IEnumDebugCodeContexts : public IUnknown
2892 {
2893     virtual HRESULT __stdcall Next(
2894         ULONG celt,
2895         IDebugCodeContext **pscc,
2896         ULONG *pceltFetched) = 0;
2897 
2898     virtual HRESULT STDMETHODCALLTYPE Skip(
2899         ULONG celt) = 0;
2900 
2901     virtual HRESULT STDMETHODCALLTYPE Reset(
2902         ) = 0;
2903 
2904     virtual HRESULT STDMETHODCALLTYPE Clone(
2905         IEnumDebugCodeContexts **ppescc) = 0;
2906 
2907 };
2908 #ifdef __CRT_UUID_DECL
2909 __CRT_UUID_DECL(IEnumDebugCodeContexts, 0x51973c1d, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
2910 #endif
2911 #else
2912 typedef struct IEnumDebugCodeContextsVtbl {
2913     BEGIN_INTERFACE
2914 
2915     /*** IUnknown methods ***/
2916     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2917         IEnumDebugCodeContexts *This,
2918         REFIID riid,
2919         void **ppvObject);
2920 
2921     ULONG (STDMETHODCALLTYPE *AddRef)(
2922         IEnumDebugCodeContexts *This);
2923 
2924     ULONG (STDMETHODCALLTYPE *Release)(
2925         IEnumDebugCodeContexts *This);
2926 
2927     /*** IEnumDebugCodeContexts methods ***/
2928     HRESULT (__stdcall *Next)(
2929         IEnumDebugCodeContexts *This,
2930         ULONG celt,
2931         IDebugCodeContext **pscc,
2932         ULONG *pceltFetched);
2933 
2934     HRESULT (STDMETHODCALLTYPE *Skip)(
2935         IEnumDebugCodeContexts *This,
2936         ULONG celt);
2937 
2938     HRESULT (STDMETHODCALLTYPE *Reset)(
2939         IEnumDebugCodeContexts *This);
2940 
2941     HRESULT (STDMETHODCALLTYPE *Clone)(
2942         IEnumDebugCodeContexts *This,
2943         IEnumDebugCodeContexts **ppescc);
2944 
2945     END_INTERFACE
2946 } IEnumDebugCodeContextsVtbl;
2947 
2948 interface IEnumDebugCodeContexts {
2949     CONST_VTBL IEnumDebugCodeContextsVtbl* lpVtbl;
2950 };
2951 
2952 #ifdef COBJMACROS
2953 #ifndef WIDL_C_INLINE_WRAPPERS
2954 /*** IUnknown methods ***/
2955 #define IEnumDebugCodeContexts_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2956 #define IEnumDebugCodeContexts_AddRef(This) (This)->lpVtbl->AddRef(This)
2957 #define IEnumDebugCodeContexts_Release(This) (This)->lpVtbl->Release(This)
2958 /*** IEnumDebugCodeContexts methods ***/
2959 #define IEnumDebugCodeContexts_Next(This,celt,pscc,pceltFetched) (This)->lpVtbl->Next(This,celt,pscc,pceltFetched)
2960 #define IEnumDebugCodeContexts_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
2961 #define IEnumDebugCodeContexts_Reset(This) (This)->lpVtbl->Reset(This)
2962 #define IEnumDebugCodeContexts_Clone(This,ppescc) (This)->lpVtbl->Clone(This,ppescc)
2963 #else
2964 /*** IUnknown methods ***/
2965 static FORCEINLINE HRESULT IEnumDebugCodeContexts_QueryInterface(IEnumDebugCodeContexts* This,REFIID riid,void **ppvObject) {
2966     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2967 }
2968 static FORCEINLINE ULONG IEnumDebugCodeContexts_AddRef(IEnumDebugCodeContexts* This) {
2969     return This->lpVtbl->AddRef(This);
2970 }
2971 static FORCEINLINE ULONG IEnumDebugCodeContexts_Release(IEnumDebugCodeContexts* This) {
2972     return This->lpVtbl->Release(This);
2973 }
2974 /*** IEnumDebugCodeContexts methods ***/
2975 static FORCEINLINE HRESULT IEnumDebugCodeContexts_Next(IEnumDebugCodeContexts* This,ULONG celt,IDebugCodeContext **pscc,ULONG *pceltFetched) {
2976     return This->lpVtbl->Next(This,celt,pscc,pceltFetched);
2977 }
2978 static FORCEINLINE HRESULT IEnumDebugCodeContexts_Skip(IEnumDebugCodeContexts* This,ULONG celt) {
2979     return This->lpVtbl->Skip(This,celt);
2980 }
2981 static FORCEINLINE HRESULT IEnumDebugCodeContexts_Reset(IEnumDebugCodeContexts* This) {
2982     return This->lpVtbl->Reset(This);
2983 }
2984 static FORCEINLINE HRESULT IEnumDebugCodeContexts_Clone(IEnumDebugCodeContexts* This,IEnumDebugCodeContexts **ppescc) {
2985     return This->lpVtbl->Clone(This,ppescc);
2986 }
2987 #endif
2988 #endif
2989 
2990 #endif
2991 
2992 HRESULT __stdcall IEnumDebugCodeContexts_RemoteNext_Proxy(
2993     IEnumDebugCodeContexts* This,
2994     ULONG celt,
2995     IDebugCodeContext **pscc,
2996     ULONG *pceltFetched);
2997 void __RPC_STUB IEnumDebugCodeContexts_RemoteNext_Stub(
2998     IRpcStubBuffer* This,
2999     IRpcChannelBuffer* pRpcChannelBuffer,
3000     PRPC_MESSAGE pRpcMessage,
3001     DWORD* pdwStubPhase);
3002 HRESULT CALLBACK IEnumDebugCodeContexts_Next_Proxy(
3003     IEnumDebugCodeContexts* This,
3004     ULONG celt,
3005     IDebugCodeContext **pscc,
3006     ULONG *pceltFetched);
3007 HRESULT __RPC_STUB IEnumDebugCodeContexts_Next_Stub(
3008     IEnumDebugCodeContexts* This,
3009     ULONG celt,
3010     IDebugCodeContext **pscc,
3011     ULONG *pceltFetched);
3012 
3013 #endif  /* __IEnumDebugCodeContexts_INTERFACE_DEFINED__ */
3014 
3015 /*****************************************************************************
3016  * IEnumDebugStackFrames interface
3017  */
3018 #ifndef __IEnumDebugStackFrames_INTERFACE_DEFINED__
3019 #define __IEnumDebugStackFrames_INTERFACE_DEFINED__
3020 
3021 DEFINE_GUID(IID_IEnumDebugStackFrames, 0x51973c1e, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
3022 #if defined(__cplusplus) && !defined(CINTERFACE)
3023 MIDL_INTERFACE("51973c1e-cb0c-11d0-b5c9-00a0244a0e7a")
3024 IEnumDebugStackFrames : public IUnknown
3025 {
3026     virtual HRESULT __stdcall Next(
3027         ULONG celt,
3028         DebugStackFrameDescriptor *prgdsfd,
3029         ULONG *pceltFetched) = 0;
3030 
3031     virtual HRESULT STDMETHODCALLTYPE Skip(
3032         ULONG celt) = 0;
3033 
3034     virtual HRESULT STDMETHODCALLTYPE Reset(
3035         ) = 0;
3036 
3037     virtual HRESULT STDMETHODCALLTYPE Clone(
3038         IEnumDebugStackFrames **ppedsf) = 0;
3039 
3040 };
3041 #ifdef __CRT_UUID_DECL
3042 __CRT_UUID_DECL(IEnumDebugStackFrames, 0x51973c1e, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
3043 #endif
3044 #else
3045 typedef struct IEnumDebugStackFramesVtbl {
3046     BEGIN_INTERFACE
3047 
3048     /*** IUnknown methods ***/
3049     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3050         IEnumDebugStackFrames *This,
3051         REFIID riid,
3052         void **ppvObject);
3053 
3054     ULONG (STDMETHODCALLTYPE *AddRef)(
3055         IEnumDebugStackFrames *This);
3056 
3057     ULONG (STDMETHODCALLTYPE *Release)(
3058         IEnumDebugStackFrames *This);
3059 
3060     /*** IEnumDebugStackFrames methods ***/
3061     HRESULT (__stdcall *Next)(
3062         IEnumDebugStackFrames *This,
3063         ULONG celt,
3064         DebugStackFrameDescriptor *prgdsfd,
3065         ULONG *pceltFetched);
3066 
3067     HRESULT (STDMETHODCALLTYPE *Skip)(
3068         IEnumDebugStackFrames *This,
3069         ULONG celt);
3070 
3071     HRESULT (STDMETHODCALLTYPE *Reset)(
3072         IEnumDebugStackFrames *This);
3073 
3074     HRESULT (STDMETHODCALLTYPE *Clone)(
3075         IEnumDebugStackFrames *This,
3076         IEnumDebugStackFrames **ppedsf);
3077 
3078     END_INTERFACE
3079 } IEnumDebugStackFramesVtbl;
3080 
3081 interface IEnumDebugStackFrames {
3082     CONST_VTBL IEnumDebugStackFramesVtbl* lpVtbl;
3083 };
3084 
3085 #ifdef COBJMACROS
3086 #ifndef WIDL_C_INLINE_WRAPPERS
3087 /*** IUnknown methods ***/
3088 #define IEnumDebugStackFrames_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3089 #define IEnumDebugStackFrames_AddRef(This) (This)->lpVtbl->AddRef(This)
3090 #define IEnumDebugStackFrames_Release(This) (This)->lpVtbl->Release(This)
3091 /*** IEnumDebugStackFrames methods ***/
3092 #define IEnumDebugStackFrames_Next(This,celt,prgdsfd,pceltFetched) (This)->lpVtbl->Next(This,celt,prgdsfd,pceltFetched)
3093 #define IEnumDebugStackFrames_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
3094 #define IEnumDebugStackFrames_Reset(This) (This)->lpVtbl->Reset(This)
3095 #define IEnumDebugStackFrames_Clone(This,ppedsf) (This)->lpVtbl->Clone(This,ppedsf)
3096 #else
3097 /*** IUnknown methods ***/
3098 static FORCEINLINE HRESULT IEnumDebugStackFrames_QueryInterface(IEnumDebugStackFrames* This,REFIID riid,void **ppvObject) {
3099     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3100 }
3101 static FORCEINLINE ULONG IEnumDebugStackFrames_AddRef(IEnumDebugStackFrames* This) {
3102     return This->lpVtbl->AddRef(This);
3103 }
3104 static FORCEINLINE ULONG IEnumDebugStackFrames_Release(IEnumDebugStackFrames* This) {
3105     return This->lpVtbl->Release(This);
3106 }
3107 /*** IEnumDebugStackFrames methods ***/
3108 static FORCEINLINE HRESULT IEnumDebugStackFrames_Next(IEnumDebugStackFrames* This,ULONG celt,DebugStackFrameDescriptor *prgdsfd,ULONG *pceltFetched) {
3109     return This->lpVtbl->Next(This,celt,prgdsfd,pceltFetched);
3110 }
3111 static FORCEINLINE HRESULT IEnumDebugStackFrames_Skip(IEnumDebugStackFrames* This,ULONG celt) {
3112     return This->lpVtbl->Skip(This,celt);
3113 }
3114 static FORCEINLINE HRESULT IEnumDebugStackFrames_Reset(IEnumDebugStackFrames* This) {
3115     return This->lpVtbl->Reset(This);
3116 }
3117 static FORCEINLINE HRESULT IEnumDebugStackFrames_Clone(IEnumDebugStackFrames* This,IEnumDebugStackFrames **ppedsf) {
3118     return This->lpVtbl->Clone(This,ppedsf);
3119 }
3120 #endif
3121 #endif
3122 
3123 #endif
3124 
3125 HRESULT __stdcall IEnumDebugStackFrames_RemoteNext_Proxy(
3126     IEnumDebugStackFrames* This,
3127     ULONG celt,
3128     DebugStackFrameDescriptor *prgdsfd,
3129     ULONG *pceltFetched);
3130 void __RPC_STUB IEnumDebugStackFrames_RemoteNext_Stub(
3131     IRpcStubBuffer* This,
3132     IRpcChannelBuffer* pRpcChannelBuffer,
3133     PRPC_MESSAGE pRpcMessage,
3134     DWORD* pdwStubPhase);
3135 HRESULT CALLBACK IEnumDebugStackFrames_Next_Proxy(
3136     IEnumDebugStackFrames* This,
3137     ULONG celt,
3138     DebugStackFrameDescriptor *prgdsfd,
3139     ULONG *pceltFetched);
3140 HRESULT __RPC_STUB IEnumDebugStackFrames_Next_Stub(
3141     IEnumDebugStackFrames* This,
3142     ULONG celt,
3143     DebugStackFrameDescriptor *prgdsfd,
3144     ULONG *pceltFetched);
3145 
3146 #endif  /* __IEnumDebugStackFrames_INTERFACE_DEFINED__ */
3147 
3148 /*****************************************************************************
3149  * IEnumDebugStackFrames64 interface
3150  */
3151 #ifndef __IEnumDebugStackFrames64_INTERFACE_DEFINED__
3152 #define __IEnumDebugStackFrames64_INTERFACE_DEFINED__
3153 
3154 DEFINE_GUID(IID_IEnumDebugStackFrames64, 0x0dc38853, 0xc1b0, 0x4176, 0xa9,0x84, 0xb2,0x98,0x36,0x10,0x27,0xaf);
3155 #if defined(__cplusplus) && !defined(CINTERFACE)
3156 MIDL_INTERFACE("0dc38853-c1b0-4176-a984-b298361027af")
3157 IEnumDebugStackFrames64 : public IEnumDebugStackFrames
3158 {
3159     virtual HRESULT __stdcall Next64(
3160         ULONG celt,
3161         DebugStackFrameDescriptor64 *prgdsfd,
3162         ULONG *pceltFetched) = 0;
3163 
3164 };
3165 #ifdef __CRT_UUID_DECL
3166 __CRT_UUID_DECL(IEnumDebugStackFrames64, 0x0dc38853, 0xc1b0, 0x4176, 0xa9,0x84, 0xb2,0x98,0x36,0x10,0x27,0xaf)
3167 #endif
3168 #else
3169 typedef struct IEnumDebugStackFrames64Vtbl {
3170     BEGIN_INTERFACE
3171 
3172     /*** IUnknown methods ***/
3173     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3174         IEnumDebugStackFrames64 *This,
3175         REFIID riid,
3176         void **ppvObject);
3177 
3178     ULONG (STDMETHODCALLTYPE *AddRef)(
3179         IEnumDebugStackFrames64 *This);
3180 
3181     ULONG (STDMETHODCALLTYPE *Release)(
3182         IEnumDebugStackFrames64 *This);
3183 
3184     /*** IEnumDebugStackFrames methods ***/
3185     HRESULT (__stdcall *Next)(
3186         IEnumDebugStackFrames64 *This,
3187         ULONG celt,
3188         DebugStackFrameDescriptor *prgdsfd,
3189         ULONG *pceltFetched);
3190 
3191     HRESULT (STDMETHODCALLTYPE *Skip)(
3192         IEnumDebugStackFrames64 *This,
3193         ULONG celt);
3194 
3195     HRESULT (STDMETHODCALLTYPE *Reset)(
3196         IEnumDebugStackFrames64 *This);
3197 
3198     HRESULT (STDMETHODCALLTYPE *Clone)(
3199         IEnumDebugStackFrames64 *This,
3200         IEnumDebugStackFrames **ppedsf);
3201 
3202     /*** IEnumDebugStackFrames64 methods ***/
3203     HRESULT (__stdcall *Next64)(
3204         IEnumDebugStackFrames64 *This,
3205         ULONG celt,
3206         DebugStackFrameDescriptor64 *prgdsfd,
3207         ULONG *pceltFetched);
3208 
3209     END_INTERFACE
3210 } IEnumDebugStackFrames64Vtbl;
3211 
3212 interface IEnumDebugStackFrames64 {
3213     CONST_VTBL IEnumDebugStackFrames64Vtbl* lpVtbl;
3214 };
3215 
3216 #ifdef COBJMACROS
3217 #ifndef WIDL_C_INLINE_WRAPPERS
3218 /*** IUnknown methods ***/
3219 #define IEnumDebugStackFrames64_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3220 #define IEnumDebugStackFrames64_AddRef(This) (This)->lpVtbl->AddRef(This)
3221 #define IEnumDebugStackFrames64_Release(This) (This)->lpVtbl->Release(This)
3222 /*** IEnumDebugStackFrames methods ***/
3223 #define IEnumDebugStackFrames64_Next(This,celt,prgdsfd,pceltFetched) (This)->lpVtbl->Next(This,celt,prgdsfd,pceltFetched)
3224 #define IEnumDebugStackFrames64_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
3225 #define IEnumDebugStackFrames64_Reset(This) (This)->lpVtbl->Reset(This)
3226 #define IEnumDebugStackFrames64_Clone(This,ppedsf) (This)->lpVtbl->Clone(This,ppedsf)
3227 /*** IEnumDebugStackFrames64 methods ***/
3228 #define IEnumDebugStackFrames64_Next64(This,celt,prgdsfd,pceltFetched) (This)->lpVtbl->Next64(This,celt,prgdsfd,pceltFetched)
3229 #else
3230 /*** IUnknown methods ***/
3231 static FORCEINLINE HRESULT IEnumDebugStackFrames64_QueryInterface(IEnumDebugStackFrames64* This,REFIID riid,void **ppvObject) {
3232     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3233 }
3234 static FORCEINLINE ULONG IEnumDebugStackFrames64_AddRef(IEnumDebugStackFrames64* This) {
3235     return This->lpVtbl->AddRef(This);
3236 }
3237 static FORCEINLINE ULONG IEnumDebugStackFrames64_Release(IEnumDebugStackFrames64* This) {
3238     return This->lpVtbl->Release(This);
3239 }
3240 /*** IEnumDebugStackFrames methods ***/
3241 static FORCEINLINE HRESULT IEnumDebugStackFrames64_Next(IEnumDebugStackFrames64* This,ULONG celt,DebugStackFrameDescriptor *prgdsfd,ULONG *pceltFetched) {
3242     return This->lpVtbl->Next(This,celt,prgdsfd,pceltFetched);
3243 }
3244 static FORCEINLINE HRESULT IEnumDebugStackFrames64_Skip(IEnumDebugStackFrames64* This,ULONG celt) {
3245     return This->lpVtbl->Skip(This,celt);
3246 }
3247 static FORCEINLINE HRESULT IEnumDebugStackFrames64_Reset(IEnumDebugStackFrames64* This) {
3248     return This->lpVtbl->Reset(This);
3249 }
3250 static FORCEINLINE HRESULT IEnumDebugStackFrames64_Clone(IEnumDebugStackFrames64* This,IEnumDebugStackFrames **ppedsf) {
3251     return This->lpVtbl->Clone(This,ppedsf);
3252 }
3253 /*** IEnumDebugStackFrames64 methods ***/
3254 static FORCEINLINE HRESULT IEnumDebugStackFrames64_Next64(IEnumDebugStackFrames64* This,ULONG celt,DebugStackFrameDescriptor64 *prgdsfd,ULONG *pceltFetched) {
3255     return This->lpVtbl->Next64(This,celt,prgdsfd,pceltFetched);
3256 }
3257 #endif
3258 #endif
3259 
3260 #endif
3261 
3262 HRESULT __stdcall IEnumDebugStackFrames64_RemoteNext64_Proxy(
3263     IEnumDebugStackFrames64* This,
3264     ULONG celt,
3265     DebugStackFrameDescriptor64 *prgdsfd,
3266     ULONG *pceltFetched);
3267 void __RPC_STUB IEnumDebugStackFrames64_RemoteNext64_Stub(
3268     IRpcStubBuffer* This,
3269     IRpcChannelBuffer* pRpcChannelBuffer,
3270     PRPC_MESSAGE pRpcMessage,
3271     DWORD* pdwStubPhase);
3272 HRESULT CALLBACK IEnumDebugStackFrames64_Next64_Proxy(
3273     IEnumDebugStackFrames64* This,
3274     ULONG celt,
3275     DebugStackFrameDescriptor64 *prgdsfd,
3276     ULONG *pceltFetched);
3277 HRESULT __RPC_STUB IEnumDebugStackFrames64_Next64_Stub(
3278     IEnumDebugStackFrames64* This,
3279     ULONG celt,
3280     DebugStackFrameDescriptor64 *prgdsfd,
3281     ULONG *pceltFetched);
3282 
3283 #endif  /* __IEnumDebugStackFrames64_INTERFACE_DEFINED__ */
3284 
3285 /*****************************************************************************
3286  * IDebugDocumentInfo interface
3287  */
3288 #ifndef __IDebugDocumentInfo_INTERFACE_DEFINED__
3289 #define __IDebugDocumentInfo_INTERFACE_DEFINED__
3290 
3291 DEFINE_GUID(IID_IDebugDocumentInfo, 0x51973c1f, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
3292 #if defined(__cplusplus) && !defined(CINTERFACE)
3293 MIDL_INTERFACE("51973c1f-cb0c-11d0-b5c9-00a0244a0e7a")
3294 IDebugDocumentInfo : public IUnknown
3295 {
3296     virtual HRESULT STDMETHODCALLTYPE GetName(
3297         DOCUMENTNAMETYPE dnt,
3298         BSTR *pbstrName) = 0;
3299 
3300     virtual HRESULT STDMETHODCALLTYPE GetDocumentClassId(
3301         CLSID *pclsidDocument) = 0;
3302 
3303 };
3304 #ifdef __CRT_UUID_DECL
3305 __CRT_UUID_DECL(IDebugDocumentInfo, 0x51973c1f, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
3306 #endif
3307 #else
3308 typedef struct IDebugDocumentInfoVtbl {
3309     BEGIN_INTERFACE
3310 
3311     /*** IUnknown methods ***/
3312     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3313         IDebugDocumentInfo *This,
3314         REFIID riid,
3315         void **ppvObject);
3316 
3317     ULONG (STDMETHODCALLTYPE *AddRef)(
3318         IDebugDocumentInfo *This);
3319 
3320     ULONG (STDMETHODCALLTYPE *Release)(
3321         IDebugDocumentInfo *This);
3322 
3323     /*** IDebugDocumentInfo methods ***/
3324     HRESULT (STDMETHODCALLTYPE *GetName)(
3325         IDebugDocumentInfo *This,
3326         DOCUMENTNAMETYPE dnt,
3327         BSTR *pbstrName);
3328 
3329     HRESULT (STDMETHODCALLTYPE *GetDocumentClassId)(
3330         IDebugDocumentInfo *This,
3331         CLSID *pclsidDocument);
3332 
3333     END_INTERFACE
3334 } IDebugDocumentInfoVtbl;
3335 
3336 interface IDebugDocumentInfo {
3337     CONST_VTBL IDebugDocumentInfoVtbl* lpVtbl;
3338 };
3339 
3340 #ifdef COBJMACROS
3341 #ifndef WIDL_C_INLINE_WRAPPERS
3342 /*** IUnknown methods ***/
3343 #define IDebugDocumentInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3344 #define IDebugDocumentInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
3345 #define IDebugDocumentInfo_Release(This) (This)->lpVtbl->Release(This)
3346 /*** IDebugDocumentInfo methods ***/
3347 #define IDebugDocumentInfo_GetName(This,dnt,pbstrName) (This)->lpVtbl->GetName(This,dnt,pbstrName)
3348 #define IDebugDocumentInfo_GetDocumentClassId(This,pclsidDocument) (This)->lpVtbl->GetDocumentClassId(This,pclsidDocument)
3349 #else
3350 /*** IUnknown methods ***/
3351 static FORCEINLINE HRESULT IDebugDocumentInfo_QueryInterface(IDebugDocumentInfo* This,REFIID riid,void **ppvObject) {
3352     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3353 }
3354 static FORCEINLINE ULONG IDebugDocumentInfo_AddRef(IDebugDocumentInfo* This) {
3355     return This->lpVtbl->AddRef(This);
3356 }
3357 static FORCEINLINE ULONG IDebugDocumentInfo_Release(IDebugDocumentInfo* This) {
3358     return This->lpVtbl->Release(This);
3359 }
3360 /*** IDebugDocumentInfo methods ***/
3361 static FORCEINLINE HRESULT IDebugDocumentInfo_GetName(IDebugDocumentInfo* This,DOCUMENTNAMETYPE dnt,BSTR *pbstrName) {
3362     return This->lpVtbl->GetName(This,dnt,pbstrName);
3363 }
3364 static FORCEINLINE HRESULT IDebugDocumentInfo_GetDocumentClassId(IDebugDocumentInfo* This,CLSID *pclsidDocument) {
3365     return This->lpVtbl->GetDocumentClassId(This,pclsidDocument);
3366 }
3367 #endif
3368 #endif
3369 
3370 #endif
3371 
3372 
3373 #endif  /* __IDebugDocumentInfo_INTERFACE_DEFINED__ */
3374 
3375 /*****************************************************************************
3376  * IDebugDocumentProvider interface
3377  */
3378 #ifndef __IDebugDocumentProvider_INTERFACE_DEFINED__
3379 #define __IDebugDocumentProvider_INTERFACE_DEFINED__
3380 
3381 DEFINE_GUID(IID_IDebugDocumentProvider, 0x51973c20, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
3382 #if defined(__cplusplus) && !defined(CINTERFACE)
3383 MIDL_INTERFACE("51973c20-cb0c-11d0-b5c9-00a0244a0e7a")
3384 IDebugDocumentProvider : public IDebugDocumentInfo
3385 {
3386     virtual HRESULT STDMETHODCALLTYPE GetDocument(
3387         IDebugDocument **ppssd) = 0;
3388 
3389 };
3390 #ifdef __CRT_UUID_DECL
3391 __CRT_UUID_DECL(IDebugDocumentProvider, 0x51973c20, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
3392 #endif
3393 #else
3394 typedef struct IDebugDocumentProviderVtbl {
3395     BEGIN_INTERFACE
3396 
3397     /*** IUnknown methods ***/
3398     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3399         IDebugDocumentProvider *This,
3400         REFIID riid,
3401         void **ppvObject);
3402 
3403     ULONG (STDMETHODCALLTYPE *AddRef)(
3404         IDebugDocumentProvider *This);
3405 
3406     ULONG (STDMETHODCALLTYPE *Release)(
3407         IDebugDocumentProvider *This);
3408 
3409     /*** IDebugDocumentInfo methods ***/
3410     HRESULT (STDMETHODCALLTYPE *GetName)(
3411         IDebugDocumentProvider *This,
3412         DOCUMENTNAMETYPE dnt,
3413         BSTR *pbstrName);
3414 
3415     HRESULT (STDMETHODCALLTYPE *GetDocumentClassId)(
3416         IDebugDocumentProvider *This,
3417         CLSID *pclsidDocument);
3418 
3419     /*** IDebugDocumentProvider methods ***/
3420     HRESULT (STDMETHODCALLTYPE *GetDocument)(
3421         IDebugDocumentProvider *This,
3422         IDebugDocument **ppssd);
3423 
3424     END_INTERFACE
3425 } IDebugDocumentProviderVtbl;
3426 
3427 interface IDebugDocumentProvider {
3428     CONST_VTBL IDebugDocumentProviderVtbl* lpVtbl;
3429 };
3430 
3431 #ifdef COBJMACROS
3432 #ifndef WIDL_C_INLINE_WRAPPERS
3433 /*** IUnknown methods ***/
3434 #define IDebugDocumentProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3435 #define IDebugDocumentProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
3436 #define IDebugDocumentProvider_Release(This) (This)->lpVtbl->Release(This)
3437 /*** IDebugDocumentInfo methods ***/
3438 #define IDebugDocumentProvider_GetName(This,dnt,pbstrName) (This)->lpVtbl->GetName(This,dnt,pbstrName)
3439 #define IDebugDocumentProvider_GetDocumentClassId(This,pclsidDocument) (This)->lpVtbl->GetDocumentClassId(This,pclsidDocument)
3440 /*** IDebugDocumentProvider methods ***/
3441 #define IDebugDocumentProvider_GetDocument(This,ppssd) (This)->lpVtbl->GetDocument(This,ppssd)
3442 #else
3443 /*** IUnknown methods ***/
3444 static FORCEINLINE HRESULT IDebugDocumentProvider_QueryInterface(IDebugDocumentProvider* This,REFIID riid,void **ppvObject) {
3445     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3446 }
3447 static FORCEINLINE ULONG IDebugDocumentProvider_AddRef(IDebugDocumentProvider* This) {
3448     return This->lpVtbl->AddRef(This);
3449 }
3450 static FORCEINLINE ULONG IDebugDocumentProvider_Release(IDebugDocumentProvider* This) {
3451     return This->lpVtbl->Release(This);
3452 }
3453 /*** IDebugDocumentInfo methods ***/
3454 static FORCEINLINE HRESULT IDebugDocumentProvider_GetName(IDebugDocumentProvider* This,DOCUMENTNAMETYPE dnt,BSTR *pbstrName) {
3455     return This->lpVtbl->GetName(This,dnt,pbstrName);
3456 }
3457 static FORCEINLINE HRESULT IDebugDocumentProvider_GetDocumentClassId(IDebugDocumentProvider* This,CLSID *pclsidDocument) {
3458     return This->lpVtbl->GetDocumentClassId(This,pclsidDocument);
3459 }
3460 /*** IDebugDocumentProvider methods ***/
3461 static FORCEINLINE HRESULT IDebugDocumentProvider_GetDocument(IDebugDocumentProvider* This,IDebugDocument **ppssd) {
3462     return This->lpVtbl->GetDocument(This,ppssd);
3463 }
3464 #endif
3465 #endif
3466 
3467 #endif
3468 
3469 
3470 #endif  /* __IDebugDocumentProvider_INTERFACE_DEFINED__ */
3471 
3472 /*****************************************************************************
3473  * IDebugDocument interface
3474  */
3475 #ifndef __IDebugDocument_INTERFACE_DEFINED__
3476 #define __IDebugDocument_INTERFACE_DEFINED__
3477 
3478 DEFINE_GUID(IID_IDebugDocument, 0x51973c21, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
3479 #if defined(__cplusplus) && !defined(CINTERFACE)
3480 MIDL_INTERFACE("51973c21-cb0c-11d0-b5c9-00a0244a0e7a")
3481 IDebugDocument : public IDebugDocumentInfo
3482 {
3483 };
3484 #ifdef __CRT_UUID_DECL
3485 __CRT_UUID_DECL(IDebugDocument, 0x51973c21, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
3486 #endif
3487 #else
3488 typedef struct IDebugDocumentVtbl {
3489     BEGIN_INTERFACE
3490 
3491     /*** IUnknown methods ***/
3492     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3493         IDebugDocument *This,
3494         REFIID riid,
3495         void **ppvObject);
3496 
3497     ULONG (STDMETHODCALLTYPE *AddRef)(
3498         IDebugDocument *This);
3499 
3500     ULONG (STDMETHODCALLTYPE *Release)(
3501         IDebugDocument *This);
3502 
3503     /*** IDebugDocumentInfo methods ***/
3504     HRESULT (STDMETHODCALLTYPE *GetName)(
3505         IDebugDocument *This,
3506         DOCUMENTNAMETYPE dnt,
3507         BSTR *pbstrName);
3508 
3509     HRESULT (STDMETHODCALLTYPE *GetDocumentClassId)(
3510         IDebugDocument *This,
3511         CLSID *pclsidDocument);
3512 
3513     END_INTERFACE
3514 } IDebugDocumentVtbl;
3515 
3516 interface IDebugDocument {
3517     CONST_VTBL IDebugDocumentVtbl* lpVtbl;
3518 };
3519 
3520 #ifdef COBJMACROS
3521 #ifndef WIDL_C_INLINE_WRAPPERS
3522 /*** IUnknown methods ***/
3523 #define IDebugDocument_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3524 #define IDebugDocument_AddRef(This) (This)->lpVtbl->AddRef(This)
3525 #define IDebugDocument_Release(This) (This)->lpVtbl->Release(This)
3526 /*** IDebugDocumentInfo methods ***/
3527 #define IDebugDocument_GetName(This,dnt,pbstrName) (This)->lpVtbl->GetName(This,dnt,pbstrName)
3528 #define IDebugDocument_GetDocumentClassId(This,pclsidDocument) (This)->lpVtbl->GetDocumentClassId(This,pclsidDocument)
3529 #else
3530 /*** IUnknown methods ***/
3531 static FORCEINLINE HRESULT IDebugDocument_QueryInterface(IDebugDocument* This,REFIID riid,void **ppvObject) {
3532     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3533 }
3534 static FORCEINLINE ULONG IDebugDocument_AddRef(IDebugDocument* This) {
3535     return This->lpVtbl->AddRef(This);
3536 }
3537 static FORCEINLINE ULONG IDebugDocument_Release(IDebugDocument* This) {
3538     return This->lpVtbl->Release(This);
3539 }
3540 /*** IDebugDocumentInfo methods ***/
3541 static FORCEINLINE HRESULT IDebugDocument_GetName(IDebugDocument* This,DOCUMENTNAMETYPE dnt,BSTR *pbstrName) {
3542     return This->lpVtbl->GetName(This,dnt,pbstrName);
3543 }
3544 static FORCEINLINE HRESULT IDebugDocument_GetDocumentClassId(IDebugDocument* This,CLSID *pclsidDocument) {
3545     return This->lpVtbl->GetDocumentClassId(This,pclsidDocument);
3546 }
3547 #endif
3548 #endif
3549 
3550 #endif
3551 
3552 
3553 #endif  /* __IDebugDocument_INTERFACE_DEFINED__ */
3554 
3555 /*****************************************************************************
3556  * IDebugDocumentText interface
3557  */
3558 #ifndef __IDebugDocumentText_INTERFACE_DEFINED__
3559 #define __IDebugDocumentText_INTERFACE_DEFINED__
3560 
3561 DEFINE_GUID(IID_IDebugDocumentText, 0x51973c22, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
3562 #if defined(__cplusplus) && !defined(CINTERFACE)
3563 MIDL_INTERFACE("51973c22-cb0c-11d0-b5c9-00a0244a0e7a")
3564 IDebugDocumentText : public IDebugDocument
3565 {
3566     virtual HRESULT STDMETHODCALLTYPE GetDocumentAttributes(
3567         TEXT_DOC_ATTR *ptextdocattr) = 0;
3568 
3569     virtual HRESULT STDMETHODCALLTYPE GetSize(
3570         ULONG *pcNumLines,
3571         ULONG *pcNumChars) = 0;
3572 
3573     virtual HRESULT STDMETHODCALLTYPE GetPositionOfLine(
3574         ULONG cLineNumber,
3575         ULONG *pcCharacterPosition) = 0;
3576 
3577     virtual HRESULT STDMETHODCALLTYPE GetLineOfPosition(
3578         ULONG cCharacterPosition,
3579         ULONG *pcLineNumber,
3580         ULONG *pcCharacterOffsetInLine) = 0;
3581 
3582     virtual HRESULT STDMETHODCALLTYPE GetText(
3583         ULONG cCharacterPosition,
3584         WCHAR *pcharText,
3585         SOURCE_TEXT_ATTR *pstaTextAttr,
3586         ULONG *pcNumChars,
3587         ULONG cMaxChars) = 0;
3588 
3589     virtual HRESULT STDMETHODCALLTYPE GetPositionOfContext(
3590         IDebugDocumentContext *psc,
3591         ULONG *pcCharacterPosition,
3592         ULONG *cNumChars) = 0;
3593 
3594     virtual HRESULT STDMETHODCALLTYPE GetContextOfPosition(
3595         ULONG cCharacterPosition,
3596         ULONG cNumChars,
3597         IDebugDocumentContext **ppsc) = 0;
3598 
3599 };
3600 #ifdef __CRT_UUID_DECL
3601 __CRT_UUID_DECL(IDebugDocumentText, 0x51973c22, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
3602 #endif
3603 #else
3604 typedef struct IDebugDocumentTextVtbl {
3605     BEGIN_INTERFACE
3606 
3607     /*** IUnknown methods ***/
3608     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3609         IDebugDocumentText *This,
3610         REFIID riid,
3611         void **ppvObject);
3612 
3613     ULONG (STDMETHODCALLTYPE *AddRef)(
3614         IDebugDocumentText *This);
3615 
3616     ULONG (STDMETHODCALLTYPE *Release)(
3617         IDebugDocumentText *This);
3618 
3619     /*** IDebugDocumentInfo methods ***/
3620     HRESULT (STDMETHODCALLTYPE *GetName)(
3621         IDebugDocumentText *This,
3622         DOCUMENTNAMETYPE dnt,
3623         BSTR *pbstrName);
3624 
3625     HRESULT (STDMETHODCALLTYPE *GetDocumentClassId)(
3626         IDebugDocumentText *This,
3627         CLSID *pclsidDocument);
3628 
3629     /*** IDebugDocumentText methods ***/
3630     HRESULT (STDMETHODCALLTYPE *GetDocumentAttributes)(
3631         IDebugDocumentText *This,
3632         TEXT_DOC_ATTR *ptextdocattr);
3633 
3634     HRESULT (STDMETHODCALLTYPE *GetSize)(
3635         IDebugDocumentText *This,
3636         ULONG *pcNumLines,
3637         ULONG *pcNumChars);
3638 
3639     HRESULT (STDMETHODCALLTYPE *GetPositionOfLine)(
3640         IDebugDocumentText *This,
3641         ULONG cLineNumber,
3642         ULONG *pcCharacterPosition);
3643 
3644     HRESULT (STDMETHODCALLTYPE *GetLineOfPosition)(
3645         IDebugDocumentText *This,
3646         ULONG cCharacterPosition,
3647         ULONG *pcLineNumber,
3648         ULONG *pcCharacterOffsetInLine);
3649 
3650     HRESULT (STDMETHODCALLTYPE *GetText)(
3651         IDebugDocumentText *This,
3652         ULONG cCharacterPosition,
3653         WCHAR *pcharText,
3654         SOURCE_TEXT_ATTR *pstaTextAttr,
3655         ULONG *pcNumChars,
3656         ULONG cMaxChars);
3657 
3658     HRESULT (STDMETHODCALLTYPE *GetPositionOfContext)(
3659         IDebugDocumentText *This,
3660         IDebugDocumentContext *psc,
3661         ULONG *pcCharacterPosition,
3662         ULONG *cNumChars);
3663 
3664     HRESULT (STDMETHODCALLTYPE *GetContextOfPosition)(
3665         IDebugDocumentText *This,
3666         ULONG cCharacterPosition,
3667         ULONG cNumChars,
3668         IDebugDocumentContext **ppsc);
3669 
3670     END_INTERFACE
3671 } IDebugDocumentTextVtbl;
3672 
3673 interface IDebugDocumentText {
3674     CONST_VTBL IDebugDocumentTextVtbl* lpVtbl;
3675 };
3676 
3677 #ifdef COBJMACROS
3678 #ifndef WIDL_C_INLINE_WRAPPERS
3679 /*** IUnknown methods ***/
3680 #define IDebugDocumentText_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3681 #define IDebugDocumentText_AddRef(This) (This)->lpVtbl->AddRef(This)
3682 #define IDebugDocumentText_Release(This) (This)->lpVtbl->Release(This)
3683 /*** IDebugDocumentInfo methods ***/
3684 #define IDebugDocumentText_GetName(This,dnt,pbstrName) (This)->lpVtbl->GetName(This,dnt,pbstrName)
3685 #define IDebugDocumentText_GetDocumentClassId(This,pclsidDocument) (This)->lpVtbl->GetDocumentClassId(This,pclsidDocument)
3686 /*** IDebugDocumentText methods ***/
3687 #define IDebugDocumentText_GetDocumentAttributes(This,ptextdocattr) (This)->lpVtbl->GetDocumentAttributes(This,ptextdocattr)
3688 #define IDebugDocumentText_GetSize(This,pcNumLines,pcNumChars) (This)->lpVtbl->GetSize(This,pcNumLines,pcNumChars)
3689 #define IDebugDocumentText_GetPositionOfLine(This,cLineNumber,pcCharacterPosition) (This)->lpVtbl->GetPositionOfLine(This,cLineNumber,pcCharacterPosition)
3690 #define IDebugDocumentText_GetLineOfPosition(This,cCharacterPosition,pcLineNumber,pcCharacterOffsetInLine) (This)->lpVtbl->GetLineOfPosition(This,cCharacterPosition,pcLineNumber,pcCharacterOffsetInLine)
3691 #define IDebugDocumentText_GetText(This,cCharacterPosition,pcharText,pstaTextAttr,pcNumChars,cMaxChars) (This)->lpVtbl->GetText(This,cCharacterPosition,pcharText,pstaTextAttr,pcNumChars,cMaxChars)
3692 #define IDebugDocumentText_GetPositionOfContext(This,psc,pcCharacterPosition,cNumChars) (This)->lpVtbl->GetPositionOfContext(This,psc,pcCharacterPosition,cNumChars)
3693 #define IDebugDocumentText_GetContextOfPosition(This,cCharacterPosition,cNumChars,ppsc) (This)->lpVtbl->GetContextOfPosition(This,cCharacterPosition,cNumChars,ppsc)
3694 #else
3695 /*** IUnknown methods ***/
3696 static FORCEINLINE HRESULT IDebugDocumentText_QueryInterface(IDebugDocumentText* This,REFIID riid,void **ppvObject) {
3697     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3698 }
3699 static FORCEINLINE ULONG IDebugDocumentText_AddRef(IDebugDocumentText* This) {
3700     return This->lpVtbl->AddRef(This);
3701 }
3702 static FORCEINLINE ULONG IDebugDocumentText_Release(IDebugDocumentText* This) {
3703     return This->lpVtbl->Release(This);
3704 }
3705 /*** IDebugDocumentInfo methods ***/
3706 static FORCEINLINE HRESULT IDebugDocumentText_GetName(IDebugDocumentText* This,DOCUMENTNAMETYPE dnt,BSTR *pbstrName) {
3707     return This->lpVtbl->GetName(This,dnt,pbstrName);
3708 }
3709 static FORCEINLINE HRESULT IDebugDocumentText_GetDocumentClassId(IDebugDocumentText* This,CLSID *pclsidDocument) {
3710     return This->lpVtbl->GetDocumentClassId(This,pclsidDocument);
3711 }
3712 /*** IDebugDocumentText methods ***/
3713 static FORCEINLINE HRESULT IDebugDocumentText_GetDocumentAttributes(IDebugDocumentText* This,TEXT_DOC_ATTR *ptextdocattr) {
3714     return This->lpVtbl->GetDocumentAttributes(This,ptextdocattr);
3715 }
3716 static FORCEINLINE HRESULT IDebugDocumentText_GetSize(IDebugDocumentText* This,ULONG *pcNumLines,ULONG *pcNumChars) {
3717     return This->lpVtbl->GetSize(This,pcNumLines,pcNumChars);
3718 }
3719 static FORCEINLINE HRESULT IDebugDocumentText_GetPositionOfLine(IDebugDocumentText* This,ULONG cLineNumber,ULONG *pcCharacterPosition) {
3720     return This->lpVtbl->GetPositionOfLine(This,cLineNumber,pcCharacterPosition);
3721 }
3722 static FORCEINLINE HRESULT IDebugDocumentText_GetLineOfPosition(IDebugDocumentText* This,ULONG cCharacterPosition,ULONG *pcLineNumber,ULONG *pcCharacterOffsetInLine) {
3723     return This->lpVtbl->GetLineOfPosition(This,cCharacterPosition,pcLineNumber,pcCharacterOffsetInLine);
3724 }
3725 static FORCEINLINE HRESULT IDebugDocumentText_GetText(IDebugDocumentText* This,ULONG cCharacterPosition,WCHAR *pcharText,SOURCE_TEXT_ATTR *pstaTextAttr,ULONG *pcNumChars,ULONG cMaxChars) {
3726     return This->lpVtbl->GetText(This,cCharacterPosition,pcharText,pstaTextAttr,pcNumChars,cMaxChars);
3727 }
3728 static FORCEINLINE HRESULT IDebugDocumentText_GetPositionOfContext(IDebugDocumentText* This,IDebugDocumentContext *psc,ULONG *pcCharacterPosition,ULONG *cNumChars) {
3729     return This->lpVtbl->GetPositionOfContext(This,psc,pcCharacterPosition,cNumChars);
3730 }
3731 static FORCEINLINE HRESULT IDebugDocumentText_GetContextOfPosition(IDebugDocumentText* This,ULONG cCharacterPosition,ULONG cNumChars,IDebugDocumentContext **ppsc) {
3732     return This->lpVtbl->GetContextOfPosition(This,cCharacterPosition,cNumChars,ppsc);
3733 }
3734 #endif
3735 #endif
3736 
3737 #endif
3738 
3739 
3740 #endif  /* __IDebugDocumentText_INTERFACE_DEFINED__ */
3741 
3742 /*****************************************************************************
3743  * IDebugDocumentTextEvents interface
3744  */
3745 #ifndef __IDebugDocumentTextEvents_INTERFACE_DEFINED__
3746 #define __IDebugDocumentTextEvents_INTERFACE_DEFINED__
3747 
3748 DEFINE_GUID(IID_IDebugDocumentTextEvents, 0x51973c23, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
3749 #if defined(__cplusplus) && !defined(CINTERFACE)
3750 MIDL_INTERFACE("51973c23-cb0c-11d0-b5c9-00a0244a0e7a")
3751 IDebugDocumentTextEvents : public IUnknown
3752 {
3753     virtual HRESULT STDMETHODCALLTYPE onDestroy(
3754         ) = 0;
3755 
3756     virtual HRESULT STDMETHODCALLTYPE onInsertText(
3757         ULONG cCharacterPosition,
3758         ULONG cNumToInsert) = 0;
3759 
3760     virtual HRESULT STDMETHODCALLTYPE onRemoveText(
3761         ULONG cCharacterPosition,
3762         ULONG cNumToRemove) = 0;
3763 
3764     virtual HRESULT STDMETHODCALLTYPE onReplaceText(
3765         ULONG cCharacterPosition,
3766         ULONG cNumToReplace) = 0;
3767 
3768     virtual HRESULT STDMETHODCALLTYPE onUpdateTextAttributes(
3769         ULONG cCharacterPosition,
3770         ULONG cNumToUpdate) = 0;
3771 
3772     virtual HRESULT STDMETHODCALLTYPE onUpdateDocumentAttributes(
3773         TEXT_DOC_ATTR textdocattr) = 0;
3774 
3775 };
3776 #ifdef __CRT_UUID_DECL
3777 __CRT_UUID_DECL(IDebugDocumentTextEvents, 0x51973c23, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
3778 #endif
3779 #else
3780 typedef struct IDebugDocumentTextEventsVtbl {
3781     BEGIN_INTERFACE
3782 
3783     /*** IUnknown methods ***/
3784     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3785         IDebugDocumentTextEvents *This,
3786         REFIID riid,
3787         void **ppvObject);
3788 
3789     ULONG (STDMETHODCALLTYPE *AddRef)(
3790         IDebugDocumentTextEvents *This);
3791 
3792     ULONG (STDMETHODCALLTYPE *Release)(
3793         IDebugDocumentTextEvents *This);
3794 
3795     /*** IDebugDocumentTextEvents methods ***/
3796     HRESULT (STDMETHODCALLTYPE *onDestroy)(
3797         IDebugDocumentTextEvents *This);
3798 
3799     HRESULT (STDMETHODCALLTYPE *onInsertText)(
3800         IDebugDocumentTextEvents *This,
3801         ULONG cCharacterPosition,
3802         ULONG cNumToInsert);
3803 
3804     HRESULT (STDMETHODCALLTYPE *onRemoveText)(
3805         IDebugDocumentTextEvents *This,
3806         ULONG cCharacterPosition,
3807         ULONG cNumToRemove);
3808 
3809     HRESULT (STDMETHODCALLTYPE *onReplaceText)(
3810         IDebugDocumentTextEvents *This,
3811         ULONG cCharacterPosition,
3812         ULONG cNumToReplace);
3813 
3814     HRESULT (STDMETHODCALLTYPE *onUpdateTextAttributes)(
3815         IDebugDocumentTextEvents *This,
3816         ULONG cCharacterPosition,
3817         ULONG cNumToUpdate);
3818 
3819     HRESULT (STDMETHODCALLTYPE *onUpdateDocumentAttributes)(
3820         IDebugDocumentTextEvents *This,
3821         TEXT_DOC_ATTR textdocattr);
3822 
3823     END_INTERFACE
3824 } IDebugDocumentTextEventsVtbl;
3825 
3826 interface IDebugDocumentTextEvents {
3827     CONST_VTBL IDebugDocumentTextEventsVtbl* lpVtbl;
3828 };
3829 
3830 #ifdef COBJMACROS
3831 #ifndef WIDL_C_INLINE_WRAPPERS
3832 /*** IUnknown methods ***/
3833 #define IDebugDocumentTextEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3834 #define IDebugDocumentTextEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
3835 #define IDebugDocumentTextEvents_Release(This) (This)->lpVtbl->Release(This)
3836 /*** IDebugDocumentTextEvents methods ***/
3837 #define IDebugDocumentTextEvents_onDestroy(This) (This)->lpVtbl->onDestroy(This)
3838 #define IDebugDocumentTextEvents_onInsertText(This,cCharacterPosition,cNumToInsert) (This)->lpVtbl->onInsertText(This,cCharacterPosition,cNumToInsert)
3839 #define IDebugDocumentTextEvents_onRemoveText(This,cCharacterPosition,cNumToRemove) (This)->lpVtbl->onRemoveText(This,cCharacterPosition,cNumToRemove)
3840 #define IDebugDocumentTextEvents_onReplaceText(This,cCharacterPosition,cNumToReplace) (This)->lpVtbl->onReplaceText(This,cCharacterPosition,cNumToReplace)
3841 #define IDebugDocumentTextEvents_onUpdateTextAttributes(This,cCharacterPosition,cNumToUpdate) (This)->lpVtbl->onUpdateTextAttributes(This,cCharacterPosition,cNumToUpdate)
3842 #define IDebugDocumentTextEvents_onUpdateDocumentAttributes(This,textdocattr) (This)->lpVtbl->onUpdateDocumentAttributes(This,textdocattr)
3843 #else
3844 /*** IUnknown methods ***/
3845 static FORCEINLINE HRESULT IDebugDocumentTextEvents_QueryInterface(IDebugDocumentTextEvents* This,REFIID riid,void **ppvObject) {
3846     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3847 }
3848 static FORCEINLINE ULONG IDebugDocumentTextEvents_AddRef(IDebugDocumentTextEvents* This) {
3849     return This->lpVtbl->AddRef(This);
3850 }
3851 static FORCEINLINE ULONG IDebugDocumentTextEvents_Release(IDebugDocumentTextEvents* This) {
3852     return This->lpVtbl->Release(This);
3853 }
3854 /*** IDebugDocumentTextEvents methods ***/
3855 static FORCEINLINE HRESULT IDebugDocumentTextEvents_onDestroy(IDebugDocumentTextEvents* This) {
3856     return This->lpVtbl->onDestroy(This);
3857 }
3858 static FORCEINLINE HRESULT IDebugDocumentTextEvents_onInsertText(IDebugDocumentTextEvents* This,ULONG cCharacterPosition,ULONG cNumToInsert) {
3859     return This->lpVtbl->onInsertText(This,cCharacterPosition,cNumToInsert);
3860 }
3861 static FORCEINLINE HRESULT IDebugDocumentTextEvents_onRemoveText(IDebugDocumentTextEvents* This,ULONG cCharacterPosition,ULONG cNumToRemove) {
3862     return This->lpVtbl->onRemoveText(This,cCharacterPosition,cNumToRemove);
3863 }
3864 static FORCEINLINE HRESULT IDebugDocumentTextEvents_onReplaceText(IDebugDocumentTextEvents* This,ULONG cCharacterPosition,ULONG cNumToReplace) {
3865     return This->lpVtbl->onReplaceText(This,cCharacterPosition,cNumToReplace);
3866 }
3867 static FORCEINLINE HRESULT IDebugDocumentTextEvents_onUpdateTextAttributes(IDebugDocumentTextEvents* This,ULONG cCharacterPosition,ULONG cNumToUpdate) {
3868     return This->lpVtbl->onUpdateTextAttributes(This,cCharacterPosition,cNumToUpdate);
3869 }
3870 static FORCEINLINE HRESULT IDebugDocumentTextEvents_onUpdateDocumentAttributes(IDebugDocumentTextEvents* This,TEXT_DOC_ATTR textdocattr) {
3871     return This->lpVtbl->onUpdateDocumentAttributes(This,textdocattr);
3872 }
3873 #endif
3874 #endif
3875 
3876 #endif
3877 
3878 
3879 #endif  /* __IDebugDocumentTextEvents_INTERFACE_DEFINED__ */
3880 
3881 /*****************************************************************************
3882  * IDebugDocumentTextAuthor interface
3883  */
3884 #ifndef __IDebugDocumentTextAuthor_INTERFACE_DEFINED__
3885 #define __IDebugDocumentTextAuthor_INTERFACE_DEFINED__
3886 
3887 DEFINE_GUID(IID_IDebugDocumentTextAuthor, 0x51973c24, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
3888 #if defined(__cplusplus) && !defined(CINTERFACE)
3889 MIDL_INTERFACE("51973c24-cb0c-11d0-b5c9-00a0244a0e7a")
3890 IDebugDocumentTextAuthor : public IDebugDocumentText
3891 {
3892     virtual HRESULT STDMETHODCALLTYPE InsertText(
3893         ULONG cCharacterPosition,
3894         ULONG cNumToInsert,
3895         OLECHAR pcharText[]) = 0;
3896 
3897     virtual HRESULT STDMETHODCALLTYPE RemoveText(
3898         ULONG cCharacterPosition,
3899         ULONG cNumToRemove) = 0;
3900 
3901     virtual HRESULT STDMETHODCALLTYPE ReplaceText(
3902         ULONG cCharacterPosition,
3903         ULONG cNumToReplace,
3904         OLECHAR pcharText[]) = 0;
3905 
3906 };
3907 #ifdef __CRT_UUID_DECL
3908 __CRT_UUID_DECL(IDebugDocumentTextAuthor, 0x51973c24, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
3909 #endif
3910 #else
3911 typedef struct IDebugDocumentTextAuthorVtbl {
3912     BEGIN_INTERFACE
3913 
3914     /*** IUnknown methods ***/
3915     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3916         IDebugDocumentTextAuthor *This,
3917         REFIID riid,
3918         void **ppvObject);
3919 
3920     ULONG (STDMETHODCALLTYPE *AddRef)(
3921         IDebugDocumentTextAuthor *This);
3922 
3923     ULONG (STDMETHODCALLTYPE *Release)(
3924         IDebugDocumentTextAuthor *This);
3925 
3926     /*** IDebugDocumentInfo methods ***/
3927     HRESULT (STDMETHODCALLTYPE *GetName)(
3928         IDebugDocumentTextAuthor *This,
3929         DOCUMENTNAMETYPE dnt,
3930         BSTR *pbstrName);
3931 
3932     HRESULT (STDMETHODCALLTYPE *GetDocumentClassId)(
3933         IDebugDocumentTextAuthor *This,
3934         CLSID *pclsidDocument);
3935 
3936     /*** IDebugDocumentText methods ***/
3937     HRESULT (STDMETHODCALLTYPE *GetDocumentAttributes)(
3938         IDebugDocumentTextAuthor *This,
3939         TEXT_DOC_ATTR *ptextdocattr);
3940 
3941     HRESULT (STDMETHODCALLTYPE *GetSize)(
3942         IDebugDocumentTextAuthor *This,
3943         ULONG *pcNumLines,
3944         ULONG *pcNumChars);
3945 
3946     HRESULT (STDMETHODCALLTYPE *GetPositionOfLine)(
3947         IDebugDocumentTextAuthor *This,
3948         ULONG cLineNumber,
3949         ULONG *pcCharacterPosition);
3950 
3951     HRESULT (STDMETHODCALLTYPE *GetLineOfPosition)(
3952         IDebugDocumentTextAuthor *This,
3953         ULONG cCharacterPosition,
3954         ULONG *pcLineNumber,
3955         ULONG *pcCharacterOffsetInLine);
3956 
3957     HRESULT (STDMETHODCALLTYPE *GetText)(
3958         IDebugDocumentTextAuthor *This,
3959         ULONG cCharacterPosition,
3960         WCHAR *pcharText,
3961         SOURCE_TEXT_ATTR *pstaTextAttr,
3962         ULONG *pcNumChars,
3963         ULONG cMaxChars);
3964 
3965     HRESULT (STDMETHODCALLTYPE *GetPositionOfContext)(
3966         IDebugDocumentTextAuthor *This,
3967         IDebugDocumentContext *psc,
3968         ULONG *pcCharacterPosition,
3969         ULONG *cNumChars);
3970 
3971     HRESULT (STDMETHODCALLTYPE *GetContextOfPosition)(
3972         IDebugDocumentTextAuthor *This,
3973         ULONG cCharacterPosition,
3974         ULONG cNumChars,
3975         IDebugDocumentContext **ppsc);
3976 
3977     /*** IDebugDocumentTextAuthor methods ***/
3978     HRESULT (STDMETHODCALLTYPE *InsertText)(
3979         IDebugDocumentTextAuthor *This,
3980         ULONG cCharacterPosition,
3981         ULONG cNumToInsert,
3982         OLECHAR pcharText[]);
3983 
3984     HRESULT (STDMETHODCALLTYPE *RemoveText)(
3985         IDebugDocumentTextAuthor *This,
3986         ULONG cCharacterPosition,
3987         ULONG cNumToRemove);
3988 
3989     HRESULT (STDMETHODCALLTYPE *ReplaceText)(
3990         IDebugDocumentTextAuthor *This,
3991         ULONG cCharacterPosition,
3992         ULONG cNumToReplace,
3993         OLECHAR pcharText[]);
3994 
3995     END_INTERFACE
3996 } IDebugDocumentTextAuthorVtbl;
3997 
3998 interface IDebugDocumentTextAuthor {
3999     CONST_VTBL IDebugDocumentTextAuthorVtbl* lpVtbl;
4000 };
4001 
4002 #ifdef COBJMACROS
4003 #ifndef WIDL_C_INLINE_WRAPPERS
4004 /*** IUnknown methods ***/
4005 #define IDebugDocumentTextAuthor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4006 #define IDebugDocumentTextAuthor_AddRef(This) (This)->lpVtbl->AddRef(This)
4007 #define IDebugDocumentTextAuthor_Release(This) (This)->lpVtbl->Release(This)
4008 /*** IDebugDocumentInfo methods ***/
4009 #define IDebugDocumentTextAuthor_GetName(This,dnt,pbstrName) (This)->lpVtbl->GetName(This,dnt,pbstrName)
4010 #define IDebugDocumentTextAuthor_GetDocumentClassId(This,pclsidDocument) (This)->lpVtbl->GetDocumentClassId(This,pclsidDocument)
4011 /*** IDebugDocumentText methods ***/
4012 #define IDebugDocumentTextAuthor_GetDocumentAttributes(This,ptextdocattr) (This)->lpVtbl->GetDocumentAttributes(This,ptextdocattr)
4013 #define IDebugDocumentTextAuthor_GetSize(This,pcNumLines,pcNumChars) (This)->lpVtbl->GetSize(This,pcNumLines,pcNumChars)
4014 #define IDebugDocumentTextAuthor_GetPositionOfLine(This,cLineNumber,pcCharacterPosition) (This)->lpVtbl->GetPositionOfLine(This,cLineNumber,pcCharacterPosition)
4015 #define IDebugDocumentTextAuthor_GetLineOfPosition(This,cCharacterPosition,pcLineNumber,pcCharacterOffsetInLine) (This)->lpVtbl->GetLineOfPosition(This,cCharacterPosition,pcLineNumber,pcCharacterOffsetInLine)
4016 #define IDebugDocumentTextAuthor_GetText(This,cCharacterPosition,pcharText,pstaTextAttr,pcNumChars,cMaxChars) (This)->lpVtbl->GetText(This,cCharacterPosition,pcharText,pstaTextAttr,pcNumChars,cMaxChars)
4017 #define IDebugDocumentTextAuthor_GetPositionOfContext(This,psc,pcCharacterPosition,cNumChars) (This)->lpVtbl->GetPositionOfContext(This,psc,pcCharacterPosition,cNumChars)
4018 #define IDebugDocumentTextAuthor_GetContextOfPosition(This,cCharacterPosition,cNumChars,ppsc) (This)->lpVtbl->GetContextOfPosition(This,cCharacterPosition,cNumChars,ppsc)
4019 /*** IDebugDocumentTextAuthor methods ***/
4020 #define IDebugDocumentTextAuthor_InsertText(This,cCharacterPosition,cNumToInsert,pcharText) (This)->lpVtbl->InsertText(This,cCharacterPosition,cNumToInsert,pcharText)
4021 #define IDebugDocumentTextAuthor_RemoveText(This,cCharacterPosition,cNumToRemove) (This)->lpVtbl->RemoveText(This,cCharacterPosition,cNumToRemove)
4022 #define IDebugDocumentTextAuthor_ReplaceText(This,cCharacterPosition,cNumToReplace,pcharText) (This)->lpVtbl->ReplaceText(This,cCharacterPosition,cNumToReplace,pcharText)
4023 #else
4024 /*** IUnknown methods ***/
4025 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_QueryInterface(IDebugDocumentTextAuthor* This,REFIID riid,void **ppvObject) {
4026     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4027 }
4028 static FORCEINLINE ULONG IDebugDocumentTextAuthor_AddRef(IDebugDocumentTextAuthor* This) {
4029     return This->lpVtbl->AddRef(This);
4030 }
4031 static FORCEINLINE ULONG IDebugDocumentTextAuthor_Release(IDebugDocumentTextAuthor* This) {
4032     return This->lpVtbl->Release(This);
4033 }
4034 /*** IDebugDocumentInfo methods ***/
4035 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_GetName(IDebugDocumentTextAuthor* This,DOCUMENTNAMETYPE dnt,BSTR *pbstrName) {
4036     return This->lpVtbl->GetName(This,dnt,pbstrName);
4037 }
4038 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_GetDocumentClassId(IDebugDocumentTextAuthor* This,CLSID *pclsidDocument) {
4039     return This->lpVtbl->GetDocumentClassId(This,pclsidDocument);
4040 }
4041 /*** IDebugDocumentText methods ***/
4042 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_GetDocumentAttributes(IDebugDocumentTextAuthor* This,TEXT_DOC_ATTR *ptextdocattr) {
4043     return This->lpVtbl->GetDocumentAttributes(This,ptextdocattr);
4044 }
4045 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_GetSize(IDebugDocumentTextAuthor* This,ULONG *pcNumLines,ULONG *pcNumChars) {
4046     return This->lpVtbl->GetSize(This,pcNumLines,pcNumChars);
4047 }
4048 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_GetPositionOfLine(IDebugDocumentTextAuthor* This,ULONG cLineNumber,ULONG *pcCharacterPosition) {
4049     return This->lpVtbl->GetPositionOfLine(This,cLineNumber,pcCharacterPosition);
4050 }
4051 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_GetLineOfPosition(IDebugDocumentTextAuthor* This,ULONG cCharacterPosition,ULONG *pcLineNumber,ULONG *pcCharacterOffsetInLine) {
4052     return This->lpVtbl->GetLineOfPosition(This,cCharacterPosition,pcLineNumber,pcCharacterOffsetInLine);
4053 }
4054 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_GetText(IDebugDocumentTextAuthor* This,ULONG cCharacterPosition,WCHAR *pcharText,SOURCE_TEXT_ATTR *pstaTextAttr,ULONG *pcNumChars,ULONG cMaxChars) {
4055     return This->lpVtbl->GetText(This,cCharacterPosition,pcharText,pstaTextAttr,pcNumChars,cMaxChars);
4056 }
4057 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_GetPositionOfContext(IDebugDocumentTextAuthor* This,IDebugDocumentContext *psc,ULONG *pcCharacterPosition,ULONG *cNumChars) {
4058     return This->lpVtbl->GetPositionOfContext(This,psc,pcCharacterPosition,cNumChars);
4059 }
4060 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_GetContextOfPosition(IDebugDocumentTextAuthor* This,ULONG cCharacterPosition,ULONG cNumChars,IDebugDocumentContext **ppsc) {
4061     return This->lpVtbl->GetContextOfPosition(This,cCharacterPosition,cNumChars,ppsc);
4062 }
4063 /*** IDebugDocumentTextAuthor methods ***/
4064 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_InsertText(IDebugDocumentTextAuthor* This,ULONG cCharacterPosition,ULONG cNumToInsert,OLECHAR pcharText[]) {
4065     return This->lpVtbl->InsertText(This,cCharacterPosition,cNumToInsert,pcharText);
4066 }
4067 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_RemoveText(IDebugDocumentTextAuthor* This,ULONG cCharacterPosition,ULONG cNumToRemove) {
4068     return This->lpVtbl->RemoveText(This,cCharacterPosition,cNumToRemove);
4069 }
4070 static FORCEINLINE HRESULT IDebugDocumentTextAuthor_ReplaceText(IDebugDocumentTextAuthor* This,ULONG cCharacterPosition,ULONG cNumToReplace,OLECHAR pcharText[]) {
4071     return This->lpVtbl->ReplaceText(This,cCharacterPosition,cNumToReplace,pcharText);
4072 }
4073 #endif
4074 #endif
4075 
4076 #endif
4077 
4078 
4079 #endif  /* __IDebugDocumentTextAuthor_INTERFACE_DEFINED__ */
4080 
4081 /*****************************************************************************
4082  * IDebugDocumentTextExternalAuthor interface
4083  */
4084 #ifndef __IDebugDocumentTextExternalAuthor_INTERFACE_DEFINED__
4085 #define __IDebugDocumentTextExternalAuthor_INTERFACE_DEFINED__
4086 
4087 DEFINE_GUID(IID_IDebugDocumentTextExternalAuthor, 0x51973c25, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
4088 #if defined(__cplusplus) && !defined(CINTERFACE)
4089 MIDL_INTERFACE("51973c25-cb0c-11d0-b5c9-00a0244a0e7a")
4090 IDebugDocumentTextExternalAuthor : public IUnknown
4091 {
4092     virtual HRESULT STDMETHODCALLTYPE GetPathName(
4093         BSTR *pbstrLongName,
4094         WINBOOL *pfIsOriginalFile) = 0;
4095 
4096     virtual HRESULT STDMETHODCALLTYPE GetFileName(
4097         BSTR *pbstrShortName) = 0;
4098 
4099     virtual HRESULT STDMETHODCALLTYPE NotifyChanged(
4100         ) = 0;
4101 
4102 };
4103 #ifdef __CRT_UUID_DECL
4104 __CRT_UUID_DECL(IDebugDocumentTextExternalAuthor, 0x51973c25, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
4105 #endif
4106 #else
4107 typedef struct IDebugDocumentTextExternalAuthorVtbl {
4108     BEGIN_INTERFACE
4109 
4110     /*** IUnknown methods ***/
4111     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4112         IDebugDocumentTextExternalAuthor *This,
4113         REFIID riid,
4114         void **ppvObject);
4115 
4116     ULONG (STDMETHODCALLTYPE *AddRef)(
4117         IDebugDocumentTextExternalAuthor *This);
4118 
4119     ULONG (STDMETHODCALLTYPE *Release)(
4120         IDebugDocumentTextExternalAuthor *This);
4121 
4122     /*** IDebugDocumentTextExternalAuthor methods ***/
4123     HRESULT (STDMETHODCALLTYPE *GetPathName)(
4124         IDebugDocumentTextExternalAuthor *This,
4125         BSTR *pbstrLongName,
4126         WINBOOL *pfIsOriginalFile);
4127 
4128     HRESULT (STDMETHODCALLTYPE *GetFileName)(
4129         IDebugDocumentTextExternalAuthor *This,
4130         BSTR *pbstrShortName);
4131 
4132     HRESULT (STDMETHODCALLTYPE *NotifyChanged)(
4133         IDebugDocumentTextExternalAuthor *This);
4134 
4135     END_INTERFACE
4136 } IDebugDocumentTextExternalAuthorVtbl;
4137 
4138 interface IDebugDocumentTextExternalAuthor {
4139     CONST_VTBL IDebugDocumentTextExternalAuthorVtbl* lpVtbl;
4140 };
4141 
4142 #ifdef COBJMACROS
4143 #ifndef WIDL_C_INLINE_WRAPPERS
4144 /*** IUnknown methods ***/
4145 #define IDebugDocumentTextExternalAuthor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4146 #define IDebugDocumentTextExternalAuthor_AddRef(This) (This)->lpVtbl->AddRef(This)
4147 #define IDebugDocumentTextExternalAuthor_Release(This) (This)->lpVtbl->Release(This)
4148 /*** IDebugDocumentTextExternalAuthor methods ***/
4149 #define IDebugDocumentTextExternalAuthor_GetPathName(This,pbstrLongName,pfIsOriginalFile) (This)->lpVtbl->GetPathName(This,pbstrLongName,pfIsOriginalFile)
4150 #define IDebugDocumentTextExternalAuthor_GetFileName(This,pbstrShortName) (This)->lpVtbl->GetFileName(This,pbstrShortName)
4151 #define IDebugDocumentTextExternalAuthor_NotifyChanged(This) (This)->lpVtbl->NotifyChanged(This)
4152 #else
4153 /*** IUnknown methods ***/
4154 static FORCEINLINE HRESULT IDebugDocumentTextExternalAuthor_QueryInterface(IDebugDocumentTextExternalAuthor* This,REFIID riid,void **ppvObject) {
4155     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4156 }
4157 static FORCEINLINE ULONG IDebugDocumentTextExternalAuthor_AddRef(IDebugDocumentTextExternalAuthor* This) {
4158     return This->lpVtbl->AddRef(This);
4159 }
4160 static FORCEINLINE ULONG IDebugDocumentTextExternalAuthor_Release(IDebugDocumentTextExternalAuthor* This) {
4161     return This->lpVtbl->Release(This);
4162 }
4163 /*** IDebugDocumentTextExternalAuthor methods ***/
4164 static FORCEINLINE HRESULT IDebugDocumentTextExternalAuthor_GetPathName(IDebugDocumentTextExternalAuthor* This,BSTR *pbstrLongName,WINBOOL *pfIsOriginalFile) {
4165     return This->lpVtbl->GetPathName(This,pbstrLongName,pfIsOriginalFile);
4166 }
4167 static FORCEINLINE HRESULT IDebugDocumentTextExternalAuthor_GetFileName(IDebugDocumentTextExternalAuthor* This,BSTR *pbstrShortName) {
4168     return This->lpVtbl->GetFileName(This,pbstrShortName);
4169 }
4170 static FORCEINLINE HRESULT IDebugDocumentTextExternalAuthor_NotifyChanged(IDebugDocumentTextExternalAuthor* This) {
4171     return This->lpVtbl->NotifyChanged(This);
4172 }
4173 #endif
4174 #endif
4175 
4176 #endif
4177 
4178 
4179 #endif  /* __IDebugDocumentTextExternalAuthor_INTERFACE_DEFINED__ */
4180 
4181 /*****************************************************************************
4182  * IDebugDocumentHelper32 interface
4183  */
4184 #ifndef __IDebugDocumentHelper32_INTERFACE_DEFINED__
4185 #define __IDebugDocumentHelper32_INTERFACE_DEFINED__
4186 
4187 DEFINE_GUID(IID_IDebugDocumentHelper32, 0x51973c26, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
4188 #if defined(__cplusplus) && !defined(CINTERFACE)
4189 MIDL_INTERFACE("51973c26-cb0c-11d0-b5c9-00a0244a0e7a")
4190 IDebugDocumentHelper32 : public IUnknown
4191 {
4192     virtual HRESULT STDMETHODCALLTYPE Init(
4193         IDebugApplication32 *pda,
4194         LPCOLESTR pszShortName,
4195         LPCOLESTR pszLongName,
4196         TEXT_DOC_ATTR docAttr) = 0;
4197 
4198     virtual HRESULT STDMETHODCALLTYPE Attach(
4199         IDebugDocumentHelper32 *pddhParent) = 0;
4200 
4201     virtual HRESULT STDMETHODCALLTYPE Detach(
4202         ) = 0;
4203 
4204     virtual HRESULT STDMETHODCALLTYPE AddUnicodeText(
4205         LPCOLESTR pszText) = 0;
4206 
4207     virtual HRESULT STDMETHODCALLTYPE AddDBCSText(
4208         LPCSTR pszText) = 0;
4209 
4210     virtual HRESULT STDMETHODCALLTYPE SetDebugDocumentHost(
4211         IDebugDocumentHost *pddh) = 0;
4212 
4213     virtual HRESULT STDMETHODCALLTYPE AddDeferredText(
4214         ULONG cChars,
4215         DWORD dwTextStartCookie) = 0;
4216 
4217     virtual HRESULT STDMETHODCALLTYPE DefineScriptBlock(
4218         ULONG ulCharOffset,
4219         ULONG cChars,
4220         IActiveScript *pas,
4221         WINBOOL fScriptlet,
4222         DWORD *pdwSourceContext) = 0;
4223 
4224     virtual HRESULT STDMETHODCALLTYPE SetDefaultTextAttr(
4225         SOURCE_TEXT_ATTR staTextAttr) = 0;
4226 
4227     virtual HRESULT STDMETHODCALLTYPE SetTextAttributes(
4228         ULONG ulCharOffset,
4229         ULONG cChars,
4230         SOURCE_TEXT_ATTR *pstaTextAttr) = 0;
4231 
4232     virtual HRESULT STDMETHODCALLTYPE SetLongName(
4233         LPCOLESTR pszLongName) = 0;
4234 
4235     virtual HRESULT STDMETHODCALLTYPE SetShortName(
4236         LPCOLESTR pszShortName) = 0;
4237 
4238     virtual HRESULT STDMETHODCALLTYPE SetDocumentAttr(
4239         TEXT_DOC_ATTR pszAttributes) = 0;
4240 
4241     virtual HRESULT STDMETHODCALLTYPE GetDebugApplicationNode(
4242         IDebugApplicationNode **ppdan) = 0;
4243 
4244     virtual HRESULT STDMETHODCALLTYPE GetScriptBlockInfo(
4245         DWORD dwSourceContext,
4246         IActiveScript **ppasd,
4247         ULONG *piCharPos,
4248         ULONG *pcChars) = 0;
4249 
4250     virtual HRESULT STDMETHODCALLTYPE CreateDebugDocumentContext(
4251         ULONG iCharPos,
4252         ULONG cChars,
4253         IDebugDocumentContext **ppddc) = 0;
4254 
4255     virtual HRESULT STDMETHODCALLTYPE BringDocumentToTop(
4256         ) = 0;
4257 
4258     virtual HRESULT STDMETHODCALLTYPE BringDocumentContextToTop(
4259         IDebugDocumentContext *pddc) = 0;
4260 
4261 };
4262 #ifdef __CRT_UUID_DECL
4263 __CRT_UUID_DECL(IDebugDocumentHelper32, 0x51973c26, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
4264 #endif
4265 #else
4266 typedef struct IDebugDocumentHelper32Vtbl {
4267     BEGIN_INTERFACE
4268 
4269     /*** IUnknown methods ***/
4270     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4271         IDebugDocumentHelper32 *This,
4272         REFIID riid,
4273         void **ppvObject);
4274 
4275     ULONG (STDMETHODCALLTYPE *AddRef)(
4276         IDebugDocumentHelper32 *This);
4277 
4278     ULONG (STDMETHODCALLTYPE *Release)(
4279         IDebugDocumentHelper32 *This);
4280 
4281     /*** IDebugDocumentHelper32 methods ***/
4282     HRESULT (STDMETHODCALLTYPE *Init)(
4283         IDebugDocumentHelper32 *This,
4284         IDebugApplication32 *pda,
4285         LPCOLESTR pszShortName,
4286         LPCOLESTR pszLongName,
4287         TEXT_DOC_ATTR docAttr);
4288 
4289     HRESULT (STDMETHODCALLTYPE *Attach)(
4290         IDebugDocumentHelper32 *This,
4291         IDebugDocumentHelper32 *pddhParent);
4292 
4293     HRESULT (STDMETHODCALLTYPE *Detach)(
4294         IDebugDocumentHelper32 *This);
4295 
4296     HRESULT (STDMETHODCALLTYPE *AddUnicodeText)(
4297         IDebugDocumentHelper32 *This,
4298         LPCOLESTR pszText);
4299 
4300     HRESULT (STDMETHODCALLTYPE *AddDBCSText)(
4301         IDebugDocumentHelper32 *This,
4302         LPCSTR pszText);
4303 
4304     HRESULT (STDMETHODCALLTYPE *SetDebugDocumentHost)(
4305         IDebugDocumentHelper32 *This,
4306         IDebugDocumentHost *pddh);
4307 
4308     HRESULT (STDMETHODCALLTYPE *AddDeferredText)(
4309         IDebugDocumentHelper32 *This,
4310         ULONG cChars,
4311         DWORD dwTextStartCookie);
4312 
4313     HRESULT (STDMETHODCALLTYPE *DefineScriptBlock)(
4314         IDebugDocumentHelper32 *This,
4315         ULONG ulCharOffset,
4316         ULONG cChars,
4317         IActiveScript *pas,
4318         WINBOOL fScriptlet,
4319         DWORD *pdwSourceContext);
4320 
4321     HRESULT (STDMETHODCALLTYPE *SetDefaultTextAttr)(
4322         IDebugDocumentHelper32 *This,
4323         SOURCE_TEXT_ATTR staTextAttr);
4324 
4325     HRESULT (STDMETHODCALLTYPE *SetTextAttributes)(
4326         IDebugDocumentHelper32 *This,
4327         ULONG ulCharOffset,
4328         ULONG cChars,
4329         SOURCE_TEXT_ATTR *pstaTextAttr);
4330 
4331     HRESULT (STDMETHODCALLTYPE *SetLongName)(
4332         IDebugDocumentHelper32 *This,
4333         LPCOLESTR pszLongName);
4334 
4335     HRESULT (STDMETHODCALLTYPE *SetShortName)(
4336         IDebugDocumentHelper32 *This,
4337         LPCOLESTR pszShortName);
4338 
4339     HRESULT (STDMETHODCALLTYPE *SetDocumentAttr)(
4340         IDebugDocumentHelper32 *This,
4341         TEXT_DOC_ATTR pszAttributes);
4342 
4343     HRESULT (STDMETHODCALLTYPE *GetDebugApplicationNode)(
4344         IDebugDocumentHelper32 *This,
4345         IDebugApplicationNode **ppdan);
4346 
4347     HRESULT (STDMETHODCALLTYPE *GetScriptBlockInfo)(
4348         IDebugDocumentHelper32 *This,
4349         DWORD dwSourceContext,
4350         IActiveScript **ppasd,
4351         ULONG *piCharPos,
4352         ULONG *pcChars);
4353 
4354     HRESULT (STDMETHODCALLTYPE *CreateDebugDocumentContext)(
4355         IDebugDocumentHelper32 *This,
4356         ULONG iCharPos,
4357         ULONG cChars,
4358         IDebugDocumentContext **ppddc);
4359 
4360     HRESULT (STDMETHODCALLTYPE *BringDocumentToTop)(
4361         IDebugDocumentHelper32 *This);
4362 
4363     HRESULT (STDMETHODCALLTYPE *BringDocumentContextToTop)(
4364         IDebugDocumentHelper32 *This,
4365         IDebugDocumentContext *pddc);
4366 
4367     END_INTERFACE
4368 } IDebugDocumentHelper32Vtbl;
4369 
4370 interface IDebugDocumentHelper32 {
4371     CONST_VTBL IDebugDocumentHelper32Vtbl* lpVtbl;
4372 };
4373 
4374 #ifdef COBJMACROS
4375 #ifndef WIDL_C_INLINE_WRAPPERS
4376 /*** IUnknown methods ***/
4377 #define IDebugDocumentHelper32_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4378 #define IDebugDocumentHelper32_AddRef(This) (This)->lpVtbl->AddRef(This)
4379 #define IDebugDocumentHelper32_Release(This) (This)->lpVtbl->Release(This)
4380 /*** IDebugDocumentHelper32 methods ***/
4381 #define IDebugDocumentHelper32_Init(This,pda,pszShortName,pszLongName,docAttr) (This)->lpVtbl->Init(This,pda,pszShortName,pszLongName,docAttr)
4382 #define IDebugDocumentHelper32_Attach(This,pddhParent) (This)->lpVtbl->Attach(This,pddhParent)
4383 #define IDebugDocumentHelper32_Detach(This) (This)->lpVtbl->Detach(This)
4384 #define IDebugDocumentHelper32_AddUnicodeText(This,pszText) (This)->lpVtbl->AddUnicodeText(This,pszText)
4385 #define IDebugDocumentHelper32_AddDBCSText(This,pszText) (This)->lpVtbl->AddDBCSText(This,pszText)
4386 #define IDebugDocumentHelper32_SetDebugDocumentHost(This,pddh) (This)->lpVtbl->SetDebugDocumentHost(This,pddh)
4387 #define IDebugDocumentHelper32_AddDeferredText(This,cChars,dwTextStartCookie) (This)->lpVtbl->AddDeferredText(This,cChars,dwTextStartCookie)
4388 #define IDebugDocumentHelper32_DefineScriptBlock(This,ulCharOffset,cChars,pas,fScriptlet,pdwSourceContext) (This)->lpVtbl->DefineScriptBlock(This,ulCharOffset,cChars,pas,fScriptlet,pdwSourceContext)
4389 #define IDebugDocumentHelper32_SetDefaultTextAttr(This,staTextAttr) (This)->lpVtbl->SetDefaultTextAttr(This,staTextAttr)
4390 #define IDebugDocumentHelper32_SetTextAttributes(This,ulCharOffset,cChars,pstaTextAttr) (This)->lpVtbl->SetTextAttributes(This,ulCharOffset,cChars,pstaTextAttr)
4391 #define IDebugDocumentHelper32_SetLongName(This,pszLongName) (This)->lpVtbl->SetLongName(This,pszLongName)
4392 #define IDebugDocumentHelper32_SetShortName(This,pszShortName) (This)->lpVtbl->SetShortName(This,pszShortName)
4393 #define IDebugDocumentHelper32_SetDocumentAttr(This,pszAttributes) (This)->lpVtbl->SetDocumentAttr(This,pszAttributes)
4394 #define IDebugDocumentHelper32_GetDebugApplicationNode(This,ppdan) (This)->lpVtbl->GetDebugApplicationNode(This,ppdan)
4395 #define IDebugDocumentHelper32_GetScriptBlockInfo(This,dwSourceContext,ppasd,piCharPos,pcChars) (This)->lpVtbl->GetScriptBlockInfo(This,dwSourceContext,ppasd,piCharPos,pcChars)
4396 #define IDebugDocumentHelper32_CreateDebugDocumentContext(This,iCharPos,cChars,ppddc) (This)->lpVtbl->CreateDebugDocumentContext(This,iCharPos,cChars,ppddc)
4397 #define IDebugDocumentHelper32_BringDocumentToTop(This) (This)->lpVtbl->BringDocumentToTop(This)
4398 #define IDebugDocumentHelper32_BringDocumentContextToTop(This,pddc) (This)->lpVtbl->BringDocumentContextToTop(This,pddc)
4399 #else
4400 /*** IUnknown methods ***/
4401 static FORCEINLINE HRESULT IDebugDocumentHelper32_QueryInterface(IDebugDocumentHelper32* This,REFIID riid,void **ppvObject) {
4402     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4403 }
4404 static FORCEINLINE ULONG IDebugDocumentHelper32_AddRef(IDebugDocumentHelper32* This) {
4405     return This->lpVtbl->AddRef(This);
4406 }
4407 static FORCEINLINE ULONG IDebugDocumentHelper32_Release(IDebugDocumentHelper32* This) {
4408     return This->lpVtbl->Release(This);
4409 }
4410 /*** IDebugDocumentHelper32 methods ***/
4411 static FORCEINLINE HRESULT IDebugDocumentHelper32_Init(IDebugDocumentHelper32* This,IDebugApplication32 *pda,LPCOLESTR pszShortName,LPCOLESTR pszLongName,TEXT_DOC_ATTR docAttr) {
4412     return This->lpVtbl->Init(This,pda,pszShortName,pszLongName,docAttr);
4413 }
4414 static FORCEINLINE HRESULT IDebugDocumentHelper32_Attach(IDebugDocumentHelper32* This,IDebugDocumentHelper32 *pddhParent) {
4415     return This->lpVtbl->Attach(This,pddhParent);
4416 }
4417 static FORCEINLINE HRESULT IDebugDocumentHelper32_Detach(IDebugDocumentHelper32* This) {
4418     return This->lpVtbl->Detach(This);
4419 }
4420 static FORCEINLINE HRESULT IDebugDocumentHelper32_AddUnicodeText(IDebugDocumentHelper32* This,LPCOLESTR pszText) {
4421     return This->lpVtbl->AddUnicodeText(This,pszText);
4422 }
4423 static FORCEINLINE HRESULT IDebugDocumentHelper32_AddDBCSText(IDebugDocumentHelper32* This,LPCSTR pszText) {
4424     return This->lpVtbl->AddDBCSText(This,pszText);
4425 }
4426 static FORCEINLINE HRESULT IDebugDocumentHelper32_SetDebugDocumentHost(IDebugDocumentHelper32* This,IDebugDocumentHost *pddh) {
4427     return This->lpVtbl->SetDebugDocumentHost(This,pddh);
4428 }
4429 static FORCEINLINE HRESULT IDebugDocumentHelper32_AddDeferredText(IDebugDocumentHelper32* This,ULONG cChars,DWORD dwTextStartCookie) {
4430     return This->lpVtbl->AddDeferredText(This,cChars,dwTextStartCookie);
4431 }
4432 static FORCEINLINE HRESULT IDebugDocumentHelper32_DefineScriptBlock(IDebugDocumentHelper32* This,ULONG ulCharOffset,ULONG cChars,IActiveScript *pas,WINBOOL fScriptlet,DWORD *pdwSourceContext) {
4433     return This->lpVtbl->DefineScriptBlock(This,ulCharOffset,cChars,pas,fScriptlet,pdwSourceContext);
4434 }
4435 static FORCEINLINE HRESULT IDebugDocumentHelper32_SetDefaultTextAttr(IDebugDocumentHelper32* This,SOURCE_TEXT_ATTR staTextAttr) {
4436     return This->lpVtbl->SetDefaultTextAttr(This,staTextAttr);
4437 }
4438 static FORCEINLINE HRESULT IDebugDocumentHelper32_SetTextAttributes(IDebugDocumentHelper32* This,ULONG ulCharOffset,ULONG cChars,SOURCE_TEXT_ATTR *pstaTextAttr) {
4439     return This->lpVtbl->SetTextAttributes(This,ulCharOffset,cChars,pstaTextAttr);
4440 }
4441 static FORCEINLINE HRESULT IDebugDocumentHelper32_SetLongName(IDebugDocumentHelper32* This,LPCOLESTR pszLongName) {
4442     return This->lpVtbl->SetLongName(This,pszLongName);
4443 }
4444 static FORCEINLINE HRESULT IDebugDocumentHelper32_SetShortName(IDebugDocumentHelper32* This,LPCOLESTR pszShortName) {
4445     return This->lpVtbl->SetShortName(This,pszShortName);
4446 }
4447 static FORCEINLINE HRESULT IDebugDocumentHelper32_SetDocumentAttr(IDebugDocumentHelper32* This,TEXT_DOC_ATTR pszAttributes) {
4448     return This->lpVtbl->SetDocumentAttr(This,pszAttributes);
4449 }
4450 static FORCEINLINE HRESULT IDebugDocumentHelper32_GetDebugApplicationNode(IDebugDocumentHelper32* This,IDebugApplicationNode **ppdan) {
4451     return This->lpVtbl->GetDebugApplicationNode(This,ppdan);
4452 }
4453 static FORCEINLINE HRESULT IDebugDocumentHelper32_GetScriptBlockInfo(IDebugDocumentHelper32* This,DWORD dwSourceContext,IActiveScript **ppasd,ULONG *piCharPos,ULONG *pcChars) {
4454     return This->lpVtbl->GetScriptBlockInfo(This,dwSourceContext,ppasd,piCharPos,pcChars);
4455 }
4456 static FORCEINLINE HRESULT IDebugDocumentHelper32_CreateDebugDocumentContext(IDebugDocumentHelper32* This,ULONG iCharPos,ULONG cChars,IDebugDocumentContext **ppddc) {
4457     return This->lpVtbl->CreateDebugDocumentContext(This,iCharPos,cChars,ppddc);
4458 }
4459 static FORCEINLINE HRESULT IDebugDocumentHelper32_BringDocumentToTop(IDebugDocumentHelper32* This) {
4460     return This->lpVtbl->BringDocumentToTop(This);
4461 }
4462 static FORCEINLINE HRESULT IDebugDocumentHelper32_BringDocumentContextToTop(IDebugDocumentHelper32* This,IDebugDocumentContext *pddc) {
4463     return This->lpVtbl->BringDocumentContextToTop(This,pddc);
4464 }
4465 #endif
4466 #endif
4467 
4468 #endif
4469 
4470 
4471 #endif  /* __IDebugDocumentHelper32_INTERFACE_DEFINED__ */
4472 
4473 /*****************************************************************************
4474  * IDebugDocumentHelper64 interface
4475  */
4476 #ifndef __IDebugDocumentHelper64_INTERFACE_DEFINED__
4477 #define __IDebugDocumentHelper64_INTERFACE_DEFINED__
4478 
4479 DEFINE_GUID(IID_IDebugDocumentHelper64, 0xc4c7363c, 0x20fd, 0x47f9, 0xbd,0x82, 0x48,0x55,0xe0,0x15,0x08,0x71);
4480 #if defined(__cplusplus) && !defined(CINTERFACE)
4481 MIDL_INTERFACE("c4c7363c-20fd-47f9-bd82-4855e0150871")
4482 IDebugDocumentHelper64 : public IUnknown
4483 {
4484     virtual HRESULT STDMETHODCALLTYPE Init(
4485         IDebugApplication64 *pda,
4486         LPCOLESTR pszShortName,
4487         LPCOLESTR pszLongName,
4488         TEXT_DOC_ATTR docAttr) = 0;
4489 
4490     virtual HRESULT STDMETHODCALLTYPE Attach(
4491         IDebugDocumentHelper64 *pddhParent) = 0;
4492 
4493     virtual HRESULT STDMETHODCALLTYPE Detach(
4494         ) = 0;
4495 
4496     virtual HRESULT STDMETHODCALLTYPE AddUnicodeText(
4497         LPCOLESTR pszText) = 0;
4498 
4499     virtual HRESULT STDMETHODCALLTYPE AddDBCSText(
4500         LPCSTR pszText) = 0;
4501 
4502     virtual HRESULT STDMETHODCALLTYPE SetDebugDocumentHost(
4503         IDebugDocumentHost *pddh) = 0;
4504 
4505     virtual HRESULT STDMETHODCALLTYPE AddDeferredText(
4506         ULONG cChars,
4507         DWORD dwTextStartCookie) = 0;
4508 
4509     virtual HRESULT STDMETHODCALLTYPE DefineScriptBlock(
4510         ULONG ulCharOffset,
4511         ULONG cChars,
4512         IActiveScript *pas,
4513         WINBOOL fScriptlet,
4514         DWORDLONG *pdwSourceContext) = 0;
4515 
4516     virtual HRESULT STDMETHODCALLTYPE SetDefaultTextAttr(
4517         SOURCE_TEXT_ATTR staTextAttr) = 0;
4518 
4519     virtual HRESULT STDMETHODCALLTYPE SetTextAttributes(
4520         ULONG ulCharOffset,
4521         ULONG cChars,
4522         SOURCE_TEXT_ATTR *pstaTextAttr) = 0;
4523 
4524     virtual HRESULT STDMETHODCALLTYPE SetLongName(
4525         LPCOLESTR pszLongName) = 0;
4526 
4527     virtual HRESULT STDMETHODCALLTYPE SetShortName(
4528         LPCOLESTR pszShortName) = 0;
4529 
4530     virtual HRESULT STDMETHODCALLTYPE SetDocumentAttr(
4531         TEXT_DOC_ATTR pszAttributes) = 0;
4532 
4533     virtual HRESULT STDMETHODCALLTYPE GetDebugApplicationNode(
4534         IDebugApplicationNode **ppdan) = 0;
4535 
4536     virtual HRESULT STDMETHODCALLTYPE GetScriptBlockInfo(
4537         DWORDLONG dwSourceContext,
4538         IActiveScript **ppasd,
4539         ULONG *piCharPos,
4540         ULONG *pcChars) = 0;
4541 
4542     virtual HRESULT STDMETHODCALLTYPE CreateDebugDocumentContext(
4543         ULONG iCharPos,
4544         ULONG cChars,
4545         IDebugDocumentContext **ppddc) = 0;
4546 
4547     virtual HRESULT STDMETHODCALLTYPE BringDocumentToTop(
4548         ) = 0;
4549 
4550     virtual HRESULT STDMETHODCALLTYPE BringDocumentContextToTop(
4551         IDebugDocumentContext *pddc) = 0;
4552 
4553 };
4554 #ifdef __CRT_UUID_DECL
4555 __CRT_UUID_DECL(IDebugDocumentHelper64, 0xc4c7363c, 0x20fd, 0x47f9, 0xbd,0x82, 0x48,0x55,0xe0,0x15,0x08,0x71)
4556 #endif
4557 #else
4558 typedef struct IDebugDocumentHelper64Vtbl {
4559     BEGIN_INTERFACE
4560 
4561     /*** IUnknown methods ***/
4562     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4563         IDebugDocumentHelper64 *This,
4564         REFIID riid,
4565         void **ppvObject);
4566 
4567     ULONG (STDMETHODCALLTYPE *AddRef)(
4568         IDebugDocumentHelper64 *This);
4569 
4570     ULONG (STDMETHODCALLTYPE *Release)(
4571         IDebugDocumentHelper64 *This);
4572 
4573     /*** IDebugDocumentHelper64 methods ***/
4574     HRESULT (STDMETHODCALLTYPE *Init)(
4575         IDebugDocumentHelper64 *This,
4576         IDebugApplication64 *pda,
4577         LPCOLESTR pszShortName,
4578         LPCOLESTR pszLongName,
4579         TEXT_DOC_ATTR docAttr);
4580 
4581     HRESULT (STDMETHODCALLTYPE *Attach)(
4582         IDebugDocumentHelper64 *This,
4583         IDebugDocumentHelper64 *pddhParent);
4584 
4585     HRESULT (STDMETHODCALLTYPE *Detach)(
4586         IDebugDocumentHelper64 *This);
4587 
4588     HRESULT (STDMETHODCALLTYPE *AddUnicodeText)(
4589         IDebugDocumentHelper64 *This,
4590         LPCOLESTR pszText);
4591 
4592     HRESULT (STDMETHODCALLTYPE *AddDBCSText)(
4593         IDebugDocumentHelper64 *This,
4594         LPCSTR pszText);
4595 
4596     HRESULT (STDMETHODCALLTYPE *SetDebugDocumentHost)(
4597         IDebugDocumentHelper64 *This,
4598         IDebugDocumentHost *pddh);
4599 
4600     HRESULT (STDMETHODCALLTYPE *AddDeferredText)(
4601         IDebugDocumentHelper64 *This,
4602         ULONG cChars,
4603         DWORD dwTextStartCookie);
4604 
4605     HRESULT (STDMETHODCALLTYPE *DefineScriptBlock)(
4606         IDebugDocumentHelper64 *This,
4607         ULONG ulCharOffset,
4608         ULONG cChars,
4609         IActiveScript *pas,
4610         WINBOOL fScriptlet,
4611         DWORDLONG *pdwSourceContext);
4612 
4613     HRESULT (STDMETHODCALLTYPE *SetDefaultTextAttr)(
4614         IDebugDocumentHelper64 *This,
4615         SOURCE_TEXT_ATTR staTextAttr);
4616 
4617     HRESULT (STDMETHODCALLTYPE *SetTextAttributes)(
4618         IDebugDocumentHelper64 *This,
4619         ULONG ulCharOffset,
4620         ULONG cChars,
4621         SOURCE_TEXT_ATTR *pstaTextAttr);
4622 
4623     HRESULT (STDMETHODCALLTYPE *SetLongName)(
4624         IDebugDocumentHelper64 *This,
4625         LPCOLESTR pszLongName);
4626 
4627     HRESULT (STDMETHODCALLTYPE *SetShortName)(
4628         IDebugDocumentHelper64 *This,
4629         LPCOLESTR pszShortName);
4630 
4631     HRESULT (STDMETHODCALLTYPE *SetDocumentAttr)(
4632         IDebugDocumentHelper64 *This,
4633         TEXT_DOC_ATTR pszAttributes);
4634 
4635     HRESULT (STDMETHODCALLTYPE *GetDebugApplicationNode)(
4636         IDebugDocumentHelper64 *This,
4637         IDebugApplicationNode **ppdan);
4638 
4639     HRESULT (STDMETHODCALLTYPE *GetScriptBlockInfo)(
4640         IDebugDocumentHelper64 *This,
4641         DWORDLONG dwSourceContext,
4642         IActiveScript **ppasd,
4643         ULONG *piCharPos,
4644         ULONG *pcChars);
4645 
4646     HRESULT (STDMETHODCALLTYPE *CreateDebugDocumentContext)(
4647         IDebugDocumentHelper64 *This,
4648         ULONG iCharPos,
4649         ULONG cChars,
4650         IDebugDocumentContext **ppddc);
4651 
4652     HRESULT (STDMETHODCALLTYPE *BringDocumentToTop)(
4653         IDebugDocumentHelper64 *This);
4654 
4655     HRESULT (STDMETHODCALLTYPE *BringDocumentContextToTop)(
4656         IDebugDocumentHelper64 *This,
4657         IDebugDocumentContext *pddc);
4658 
4659     END_INTERFACE
4660 } IDebugDocumentHelper64Vtbl;
4661 
4662 interface IDebugDocumentHelper64 {
4663     CONST_VTBL IDebugDocumentHelper64Vtbl* lpVtbl;
4664 };
4665 
4666 #ifdef COBJMACROS
4667 #ifndef WIDL_C_INLINE_WRAPPERS
4668 /*** IUnknown methods ***/
4669 #define IDebugDocumentHelper64_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4670 #define IDebugDocumentHelper64_AddRef(This) (This)->lpVtbl->AddRef(This)
4671 #define IDebugDocumentHelper64_Release(This) (This)->lpVtbl->Release(This)
4672 /*** IDebugDocumentHelper64 methods ***/
4673 #define IDebugDocumentHelper64_Init(This,pda,pszShortName,pszLongName,docAttr) (This)->lpVtbl->Init(This,pda,pszShortName,pszLongName,docAttr)
4674 #define IDebugDocumentHelper64_Attach(This,pddhParent) (This)->lpVtbl->Attach(This,pddhParent)
4675 #define IDebugDocumentHelper64_Detach(This) (This)->lpVtbl->Detach(This)
4676 #define IDebugDocumentHelper64_AddUnicodeText(This,pszText) (This)->lpVtbl->AddUnicodeText(This,pszText)
4677 #define IDebugDocumentHelper64_AddDBCSText(This,pszText) (This)->lpVtbl->AddDBCSText(This,pszText)
4678 #define IDebugDocumentHelper64_SetDebugDocumentHost(This,pddh) (This)->lpVtbl->SetDebugDocumentHost(This,pddh)
4679 #define IDebugDocumentHelper64_AddDeferredText(This,cChars,dwTextStartCookie) (This)->lpVtbl->AddDeferredText(This,cChars,dwTextStartCookie)
4680 #define IDebugDocumentHelper64_DefineScriptBlock(This,ulCharOffset,cChars,pas,fScriptlet,pdwSourceContext) (This)->lpVtbl->DefineScriptBlock(This,ulCharOffset,cChars,pas,fScriptlet,pdwSourceContext)
4681 #define IDebugDocumentHelper64_SetDefaultTextAttr(This,staTextAttr) (This)->lpVtbl->SetDefaultTextAttr(This,staTextAttr)
4682 #define IDebugDocumentHelper64_SetTextAttributes(This,ulCharOffset,cChars,pstaTextAttr) (This)->lpVtbl->SetTextAttributes(This,ulCharOffset,cChars,pstaTextAttr)
4683 #define IDebugDocumentHelper64_SetLongName(This,pszLongName) (This)->lpVtbl->SetLongName(This,pszLongName)
4684 #define IDebugDocumentHelper64_SetShortName(This,pszShortName) (This)->lpVtbl->SetShortName(This,pszShortName)
4685 #define IDebugDocumentHelper64_SetDocumentAttr(This,pszAttributes) (This)->lpVtbl->SetDocumentAttr(This,pszAttributes)
4686 #define IDebugDocumentHelper64_GetDebugApplicationNode(This,ppdan) (This)->lpVtbl->GetDebugApplicationNode(This,ppdan)
4687 #define IDebugDocumentHelper64_GetScriptBlockInfo(This,dwSourceContext,ppasd,piCharPos,pcChars) (This)->lpVtbl->GetScriptBlockInfo(This,dwSourceContext,ppasd,piCharPos,pcChars)
4688 #define IDebugDocumentHelper64_CreateDebugDocumentContext(This,iCharPos,cChars,ppddc) (This)->lpVtbl->CreateDebugDocumentContext(This,iCharPos,cChars,ppddc)
4689 #define IDebugDocumentHelper64_BringDocumentToTop(This) (This)->lpVtbl->BringDocumentToTop(This)
4690 #define IDebugDocumentHelper64_BringDocumentContextToTop(This,pddc) (This)->lpVtbl->BringDocumentContextToTop(This,pddc)
4691 #else
4692 /*** IUnknown methods ***/
4693 static FORCEINLINE HRESULT IDebugDocumentHelper64_QueryInterface(IDebugDocumentHelper64* This,REFIID riid,void **ppvObject) {
4694     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4695 }
4696 static FORCEINLINE ULONG IDebugDocumentHelper64_AddRef(IDebugDocumentHelper64* This) {
4697     return This->lpVtbl->AddRef(This);
4698 }
4699 static FORCEINLINE ULONG IDebugDocumentHelper64_Release(IDebugDocumentHelper64* This) {
4700     return This->lpVtbl->Release(This);
4701 }
4702 /*** IDebugDocumentHelper64 methods ***/
4703 static FORCEINLINE HRESULT IDebugDocumentHelper64_Init(IDebugDocumentHelper64* This,IDebugApplication64 *pda,LPCOLESTR pszShortName,LPCOLESTR pszLongName,TEXT_DOC_ATTR docAttr) {
4704     return This->lpVtbl->Init(This,pda,pszShortName,pszLongName,docAttr);
4705 }
4706 static FORCEINLINE HRESULT IDebugDocumentHelper64_Attach(IDebugDocumentHelper64* This,IDebugDocumentHelper64 *pddhParent) {
4707     return This->lpVtbl->Attach(This,pddhParent);
4708 }
4709 static FORCEINLINE HRESULT IDebugDocumentHelper64_Detach(IDebugDocumentHelper64* This) {
4710     return This->lpVtbl->Detach(This);
4711 }
4712 static FORCEINLINE HRESULT IDebugDocumentHelper64_AddUnicodeText(IDebugDocumentHelper64* This,LPCOLESTR pszText) {
4713     return This->lpVtbl->AddUnicodeText(This,pszText);
4714 }
4715 static FORCEINLINE HRESULT IDebugDocumentHelper64_AddDBCSText(IDebugDocumentHelper64* This,LPCSTR pszText) {
4716     return This->lpVtbl->AddDBCSText(This,pszText);
4717 }
4718 static FORCEINLINE HRESULT IDebugDocumentHelper64_SetDebugDocumentHost(IDebugDocumentHelper64* This,IDebugDocumentHost *pddh) {
4719     return This->lpVtbl->SetDebugDocumentHost(This,pddh);
4720 }
4721 static FORCEINLINE HRESULT IDebugDocumentHelper64_AddDeferredText(IDebugDocumentHelper64* This,ULONG cChars,DWORD dwTextStartCookie) {
4722     return This->lpVtbl->AddDeferredText(This,cChars,dwTextStartCookie);
4723 }
4724 static FORCEINLINE HRESULT IDebugDocumentHelper64_DefineScriptBlock(IDebugDocumentHelper64* This,ULONG ulCharOffset,ULONG cChars,IActiveScript *pas,WINBOOL fScriptlet,DWORDLONG *pdwSourceContext) {
4725     return This->lpVtbl->DefineScriptBlock(This,ulCharOffset,cChars,pas,fScriptlet,pdwSourceContext);
4726 }
4727 static FORCEINLINE HRESULT IDebugDocumentHelper64_SetDefaultTextAttr(IDebugDocumentHelper64* This,SOURCE_TEXT_ATTR staTextAttr) {
4728     return This->lpVtbl->SetDefaultTextAttr(This,staTextAttr);
4729 }
4730 static FORCEINLINE HRESULT IDebugDocumentHelper64_SetTextAttributes(IDebugDocumentHelper64* This,ULONG ulCharOffset,ULONG cChars,SOURCE_TEXT_ATTR *pstaTextAttr) {
4731     return This->lpVtbl->SetTextAttributes(This,ulCharOffset,cChars,pstaTextAttr);
4732 }
4733 static FORCEINLINE HRESULT IDebugDocumentHelper64_SetLongName(IDebugDocumentHelper64* This,LPCOLESTR pszLongName) {
4734     return This->lpVtbl->SetLongName(This,pszLongName);
4735 }
4736 static FORCEINLINE HRESULT IDebugDocumentHelper64_SetShortName(IDebugDocumentHelper64* This,LPCOLESTR pszShortName) {
4737     return This->lpVtbl->SetShortName(This,pszShortName);
4738 }
4739 static FORCEINLINE HRESULT IDebugDocumentHelper64_SetDocumentAttr(IDebugDocumentHelper64* This,TEXT_DOC_ATTR pszAttributes) {
4740     return This->lpVtbl->SetDocumentAttr(This,pszAttributes);
4741 }
4742 static FORCEINLINE HRESULT IDebugDocumentHelper64_GetDebugApplicationNode(IDebugDocumentHelper64* This,IDebugApplicationNode **ppdan) {
4743     return This->lpVtbl->GetDebugApplicationNode(This,ppdan);
4744 }
4745 static FORCEINLINE HRESULT IDebugDocumentHelper64_GetScriptBlockInfo(IDebugDocumentHelper64* This,DWORDLONG dwSourceContext,IActiveScript **ppasd,ULONG *piCharPos,ULONG *pcChars) {
4746     return This->lpVtbl->GetScriptBlockInfo(This,dwSourceContext,ppasd,piCharPos,pcChars);
4747 }
4748 static FORCEINLINE HRESULT IDebugDocumentHelper64_CreateDebugDocumentContext(IDebugDocumentHelper64* This,ULONG iCharPos,ULONG cChars,IDebugDocumentContext **ppddc) {
4749     return This->lpVtbl->CreateDebugDocumentContext(This,iCharPos,cChars,ppddc);
4750 }
4751 static FORCEINLINE HRESULT IDebugDocumentHelper64_BringDocumentToTop(IDebugDocumentHelper64* This) {
4752     return This->lpVtbl->BringDocumentToTop(This);
4753 }
4754 static FORCEINLINE HRESULT IDebugDocumentHelper64_BringDocumentContextToTop(IDebugDocumentHelper64* This,IDebugDocumentContext *pddc) {
4755     return This->lpVtbl->BringDocumentContextToTop(This,pddc);
4756 }
4757 #endif
4758 #endif
4759 
4760 #endif
4761 
4762 
4763 #endif  /* __IDebugDocumentHelper64_INTERFACE_DEFINED__ */
4764 
4765 /*****************************************************************************
4766  * IDebugDocumentHost interface
4767  */
4768 #ifndef __IDebugDocumentHost_INTERFACE_DEFINED__
4769 #define __IDebugDocumentHost_INTERFACE_DEFINED__
4770 
4771 DEFINE_GUID(IID_IDebugDocumentHost, 0x51973c27, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
4772 #if defined(__cplusplus) && !defined(CINTERFACE)
4773 MIDL_INTERFACE("51973c27-cb0c-11d0-b5c9-00a0244a0e7a")
4774 IDebugDocumentHost : public IUnknown
4775 {
4776     virtual HRESULT STDMETHODCALLTYPE GetDeferredText(
4777         DWORD dwTextStartCookie,
4778         WCHAR *pcharText,
4779         SOURCE_TEXT_ATTR *pstaTextAttr,
4780         ULONG *pcNumChars,
4781         ULONG cMaxChars) = 0;
4782 
4783     virtual HRESULT STDMETHODCALLTYPE GetScriptTextAttributes(
4784         LPCOLESTR pstrCode,
4785         ULONG uNumCodeChars,
4786         LPCOLESTR pstrDelimiter,
4787         DWORD dwFlags,
4788         SOURCE_TEXT_ATTR *pattr) = 0;
4789 
4790     virtual HRESULT STDMETHODCALLTYPE OnCreateDocumentContext(
4791         IUnknown **ppunkOuter) = 0;
4792 
4793     virtual HRESULT STDMETHODCALLTYPE GetPathName(
4794         BSTR *pbstrLongName,
4795         WINBOOL *pfIsOriginalFile) = 0;
4796 
4797     virtual HRESULT STDMETHODCALLTYPE GetFileName(
4798         BSTR *pbstrShortName) = 0;
4799 
4800     virtual HRESULT STDMETHODCALLTYPE NotifyChanged(
4801         ) = 0;
4802 
4803 };
4804 #ifdef __CRT_UUID_DECL
4805 __CRT_UUID_DECL(IDebugDocumentHost, 0x51973c27, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
4806 #endif
4807 #else
4808 typedef struct IDebugDocumentHostVtbl {
4809     BEGIN_INTERFACE
4810 
4811     /*** IUnknown methods ***/
4812     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4813         IDebugDocumentHost *This,
4814         REFIID riid,
4815         void **ppvObject);
4816 
4817     ULONG (STDMETHODCALLTYPE *AddRef)(
4818         IDebugDocumentHost *This);
4819 
4820     ULONG (STDMETHODCALLTYPE *Release)(
4821         IDebugDocumentHost *This);
4822 
4823     /*** IDebugDocumentHost methods ***/
4824     HRESULT (STDMETHODCALLTYPE *GetDeferredText)(
4825         IDebugDocumentHost *This,
4826         DWORD dwTextStartCookie,
4827         WCHAR *pcharText,
4828         SOURCE_TEXT_ATTR *pstaTextAttr,
4829         ULONG *pcNumChars,
4830         ULONG cMaxChars);
4831 
4832     HRESULT (STDMETHODCALLTYPE *GetScriptTextAttributes)(
4833         IDebugDocumentHost *This,
4834         LPCOLESTR pstrCode,
4835         ULONG uNumCodeChars,
4836         LPCOLESTR pstrDelimiter,
4837         DWORD dwFlags,
4838         SOURCE_TEXT_ATTR *pattr);
4839 
4840     HRESULT (STDMETHODCALLTYPE *OnCreateDocumentContext)(
4841         IDebugDocumentHost *This,
4842         IUnknown **ppunkOuter);
4843 
4844     HRESULT (STDMETHODCALLTYPE *GetPathName)(
4845         IDebugDocumentHost *This,
4846         BSTR *pbstrLongName,
4847         WINBOOL *pfIsOriginalFile);
4848 
4849     HRESULT (STDMETHODCALLTYPE *GetFileName)(
4850         IDebugDocumentHost *This,
4851         BSTR *pbstrShortName);
4852 
4853     HRESULT (STDMETHODCALLTYPE *NotifyChanged)(
4854         IDebugDocumentHost *This);
4855 
4856     END_INTERFACE
4857 } IDebugDocumentHostVtbl;
4858 
4859 interface IDebugDocumentHost {
4860     CONST_VTBL IDebugDocumentHostVtbl* lpVtbl;
4861 };
4862 
4863 #ifdef COBJMACROS
4864 #ifndef WIDL_C_INLINE_WRAPPERS
4865 /*** IUnknown methods ***/
4866 #define IDebugDocumentHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4867 #define IDebugDocumentHost_AddRef(This) (This)->lpVtbl->AddRef(This)
4868 #define IDebugDocumentHost_Release(This) (This)->lpVtbl->Release(This)
4869 /*** IDebugDocumentHost methods ***/
4870 #define IDebugDocumentHost_GetDeferredText(This,dwTextStartCookie,pcharText,pstaTextAttr,pcNumChars,cMaxChars) (This)->lpVtbl->GetDeferredText(This,dwTextStartCookie,pcharText,pstaTextAttr,pcNumChars,cMaxChars)
4871 #define IDebugDocumentHost_GetScriptTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr) (This)->lpVtbl->GetScriptTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr)
4872 #define IDebugDocumentHost_OnCreateDocumentContext(This,ppunkOuter) (This)->lpVtbl->OnCreateDocumentContext(This,ppunkOuter)
4873 #define IDebugDocumentHost_GetPathName(This,pbstrLongName,pfIsOriginalFile) (This)->lpVtbl->GetPathName(This,pbstrLongName,pfIsOriginalFile)
4874 #define IDebugDocumentHost_GetFileName(This,pbstrShortName) (This)->lpVtbl->GetFileName(This,pbstrShortName)
4875 #define IDebugDocumentHost_NotifyChanged(This) (This)->lpVtbl->NotifyChanged(This)
4876 #else
4877 /*** IUnknown methods ***/
4878 static FORCEINLINE HRESULT IDebugDocumentHost_QueryInterface(IDebugDocumentHost* This,REFIID riid,void **ppvObject) {
4879     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4880 }
4881 static FORCEINLINE ULONG IDebugDocumentHost_AddRef(IDebugDocumentHost* This) {
4882     return This->lpVtbl->AddRef(This);
4883 }
4884 static FORCEINLINE ULONG IDebugDocumentHost_Release(IDebugDocumentHost* This) {
4885     return This->lpVtbl->Release(This);
4886 }
4887 /*** IDebugDocumentHost methods ***/
4888 static FORCEINLINE HRESULT IDebugDocumentHost_GetDeferredText(IDebugDocumentHost* This,DWORD dwTextStartCookie,WCHAR *pcharText,SOURCE_TEXT_ATTR *pstaTextAttr,ULONG *pcNumChars,ULONG cMaxChars) {
4889     return This->lpVtbl->GetDeferredText(This,dwTextStartCookie,pcharText,pstaTextAttr,pcNumChars,cMaxChars);
4890 }
4891 static FORCEINLINE HRESULT IDebugDocumentHost_GetScriptTextAttributes(IDebugDocumentHost* This,LPCOLESTR pstrCode,ULONG uNumCodeChars,LPCOLESTR pstrDelimiter,DWORD dwFlags,SOURCE_TEXT_ATTR *pattr) {
4892     return This->lpVtbl->GetScriptTextAttributes(This,pstrCode,uNumCodeChars,pstrDelimiter,dwFlags,pattr);
4893 }
4894 static FORCEINLINE HRESULT IDebugDocumentHost_OnCreateDocumentContext(IDebugDocumentHost* This,IUnknown **ppunkOuter) {
4895     return This->lpVtbl->OnCreateDocumentContext(This,ppunkOuter);
4896 }
4897 static FORCEINLINE HRESULT IDebugDocumentHost_GetPathName(IDebugDocumentHost* This,BSTR *pbstrLongName,WINBOOL *pfIsOriginalFile) {
4898     return This->lpVtbl->GetPathName(This,pbstrLongName,pfIsOriginalFile);
4899 }
4900 static FORCEINLINE HRESULT IDebugDocumentHost_GetFileName(IDebugDocumentHost* This,BSTR *pbstrShortName) {
4901     return This->lpVtbl->GetFileName(This,pbstrShortName);
4902 }
4903 static FORCEINLINE HRESULT IDebugDocumentHost_NotifyChanged(IDebugDocumentHost* This) {
4904     return This->lpVtbl->NotifyChanged(This);
4905 }
4906 #endif
4907 #endif
4908 
4909 #endif
4910 
4911 
4912 #endif  /* __IDebugDocumentHost_INTERFACE_DEFINED__ */
4913 
4914 /*****************************************************************************
4915  * IDebugDocumentContext interface
4916  */
4917 #ifndef __IDebugDocumentContext_INTERFACE_DEFINED__
4918 #define __IDebugDocumentContext_INTERFACE_DEFINED__
4919 
4920 DEFINE_GUID(IID_IDebugDocumentContext, 0x51973c28, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
4921 #if defined(__cplusplus) && !defined(CINTERFACE)
4922 MIDL_INTERFACE("51973c28-cb0c-11d0-b5c9-00a0244a0e7a")
4923 IDebugDocumentContext : public IUnknown
4924 {
4925     virtual HRESULT STDMETHODCALLTYPE GetDocument(
4926         IDebugDocument **ppsd) = 0;
4927 
4928     virtual HRESULT STDMETHODCALLTYPE EnumCodeContexts(
4929         IEnumDebugCodeContexts **ppescc) = 0;
4930 
4931 };
4932 #ifdef __CRT_UUID_DECL
4933 __CRT_UUID_DECL(IDebugDocumentContext, 0x51973c28, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
4934 #endif
4935 #else
4936 typedef struct IDebugDocumentContextVtbl {
4937     BEGIN_INTERFACE
4938 
4939     /*** IUnknown methods ***/
4940     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4941         IDebugDocumentContext *This,
4942         REFIID riid,
4943         void **ppvObject);
4944 
4945     ULONG (STDMETHODCALLTYPE *AddRef)(
4946         IDebugDocumentContext *This);
4947 
4948     ULONG (STDMETHODCALLTYPE *Release)(
4949         IDebugDocumentContext *This);
4950 
4951     /*** IDebugDocumentContext methods ***/
4952     HRESULT (STDMETHODCALLTYPE *GetDocument)(
4953         IDebugDocumentContext *This,
4954         IDebugDocument **ppsd);
4955 
4956     HRESULT (STDMETHODCALLTYPE *EnumCodeContexts)(
4957         IDebugDocumentContext *This,
4958         IEnumDebugCodeContexts **ppescc);
4959 
4960     END_INTERFACE
4961 } IDebugDocumentContextVtbl;
4962 
4963 interface IDebugDocumentContext {
4964     CONST_VTBL IDebugDocumentContextVtbl* lpVtbl;
4965 };
4966 
4967 #ifdef COBJMACROS
4968 #ifndef WIDL_C_INLINE_WRAPPERS
4969 /*** IUnknown methods ***/
4970 #define IDebugDocumentContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4971 #define IDebugDocumentContext_AddRef(This) (This)->lpVtbl->AddRef(This)
4972 #define IDebugDocumentContext_Release(This) (This)->lpVtbl->Release(This)
4973 /*** IDebugDocumentContext methods ***/
4974 #define IDebugDocumentContext_GetDocument(This,ppsd) (This)->lpVtbl->GetDocument(This,ppsd)
4975 #define IDebugDocumentContext_EnumCodeContexts(This,ppescc) (This)->lpVtbl->EnumCodeContexts(This,ppescc)
4976 #else
4977 /*** IUnknown methods ***/
4978 static FORCEINLINE HRESULT IDebugDocumentContext_QueryInterface(IDebugDocumentContext* This,REFIID riid,void **ppvObject) {
4979     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4980 }
4981 static FORCEINLINE ULONG IDebugDocumentContext_AddRef(IDebugDocumentContext* This) {
4982     return This->lpVtbl->AddRef(This);
4983 }
4984 static FORCEINLINE ULONG IDebugDocumentContext_Release(IDebugDocumentContext* This) {
4985     return This->lpVtbl->Release(This);
4986 }
4987 /*** IDebugDocumentContext methods ***/
4988 static FORCEINLINE HRESULT IDebugDocumentContext_GetDocument(IDebugDocumentContext* This,IDebugDocument **ppsd) {
4989     return This->lpVtbl->GetDocument(This,ppsd);
4990 }
4991 static FORCEINLINE HRESULT IDebugDocumentContext_EnumCodeContexts(IDebugDocumentContext* This,IEnumDebugCodeContexts **ppescc) {
4992     return This->lpVtbl->EnumCodeContexts(This,ppescc);
4993 }
4994 #endif
4995 #endif
4996 
4997 #endif
4998 
4999 
5000 #endif  /* __IDebugDocumentContext_INTERFACE_DEFINED__ */
5001 
5002 /*****************************************************************************
5003  * IDebugSessionProvider interface
5004  */
5005 #ifndef __IDebugSessionProvider_INTERFACE_DEFINED__
5006 #define __IDebugSessionProvider_INTERFACE_DEFINED__
5007 
5008 DEFINE_GUID(IID_IDebugSessionProvider, 0x51973c29, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
5009 #if defined(__cplusplus) && !defined(CINTERFACE)
5010 MIDL_INTERFACE("51973c29-cb0c-11d0-b5c9-00a0244a0e7a")
5011 IDebugSessionProvider : public IUnknown
5012 {
5013     virtual HRESULT STDMETHODCALLTYPE StartDebugSession(
5014         IRemoteDebugApplication *pda) = 0;
5015 
5016 };
5017 #ifdef __CRT_UUID_DECL
5018 __CRT_UUID_DECL(IDebugSessionProvider, 0x51973c29, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
5019 #endif
5020 #else
5021 typedef struct IDebugSessionProviderVtbl {
5022     BEGIN_INTERFACE
5023 
5024     /*** IUnknown methods ***/
5025     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5026         IDebugSessionProvider *This,
5027         REFIID riid,
5028         void **ppvObject);
5029 
5030     ULONG (STDMETHODCALLTYPE *AddRef)(
5031         IDebugSessionProvider *This);
5032 
5033     ULONG (STDMETHODCALLTYPE *Release)(
5034         IDebugSessionProvider *This);
5035 
5036     /*** IDebugSessionProvider methods ***/
5037     HRESULT (STDMETHODCALLTYPE *StartDebugSession)(
5038         IDebugSessionProvider *This,
5039         IRemoteDebugApplication *pda);
5040 
5041     END_INTERFACE
5042 } IDebugSessionProviderVtbl;
5043 
5044 interface IDebugSessionProvider {
5045     CONST_VTBL IDebugSessionProviderVtbl* lpVtbl;
5046 };
5047 
5048 #ifdef COBJMACROS
5049 #ifndef WIDL_C_INLINE_WRAPPERS
5050 /*** IUnknown methods ***/
5051 #define IDebugSessionProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5052 #define IDebugSessionProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
5053 #define IDebugSessionProvider_Release(This) (This)->lpVtbl->Release(This)
5054 /*** IDebugSessionProvider methods ***/
5055 #define IDebugSessionProvider_StartDebugSession(This,pda) (This)->lpVtbl->StartDebugSession(This,pda)
5056 #else
5057 /*** IUnknown methods ***/
5058 static FORCEINLINE HRESULT IDebugSessionProvider_QueryInterface(IDebugSessionProvider* This,REFIID riid,void **ppvObject) {
5059     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5060 }
5061 static FORCEINLINE ULONG IDebugSessionProvider_AddRef(IDebugSessionProvider* This) {
5062     return This->lpVtbl->AddRef(This);
5063 }
5064 static FORCEINLINE ULONG IDebugSessionProvider_Release(IDebugSessionProvider* This) {
5065     return This->lpVtbl->Release(This);
5066 }
5067 /*** IDebugSessionProvider methods ***/
5068 static FORCEINLINE HRESULT IDebugSessionProvider_StartDebugSession(IDebugSessionProvider* This,IRemoteDebugApplication *pda) {
5069     return This->lpVtbl->StartDebugSession(This,pda);
5070 }
5071 #endif
5072 #endif
5073 
5074 #endif
5075 
5076 
5077 #endif  /* __IDebugSessionProvider_INTERFACE_DEFINED__ */
5078 
5079 /*****************************************************************************
5080  * IApplicationDebugger interface
5081  */
5082 #ifndef __IApplicationDebugger_INTERFACE_DEFINED__
5083 #define __IApplicationDebugger_INTERFACE_DEFINED__
5084 
5085 DEFINE_GUID(IID_IApplicationDebugger, 0x51973c2a, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
5086 #if defined(__cplusplus) && !defined(CINTERFACE)
5087 MIDL_INTERFACE("51973c2a-cb0c-11d0-b5c9-00a0244a0e7a")
5088 IApplicationDebugger : public IUnknown
5089 {
5090     virtual HRESULT STDMETHODCALLTYPE QueryAlive(
5091         ) = 0;
5092 
5093     virtual HRESULT STDMETHODCALLTYPE CreateInstanceAtDebugger(
5094         REFCLSID rclsid,
5095         IUnknown *pUnkOuter,
5096         DWORD dwClsContext,
5097         REFIID riid,
5098         IUnknown **ppvObject) = 0;
5099 
5100     virtual HRESULT STDMETHODCALLTYPE onDebugOutput(
5101         LPCOLESTR pstr) = 0;
5102 
5103     virtual HRESULT STDMETHODCALLTYPE onHandleBreakPoint(
5104         IRemoteDebugApplicationThread *prpt,
5105         BREAKREASON br,
5106         IActiveScriptErrorDebug *pError) = 0;
5107 
5108     virtual HRESULT STDMETHODCALLTYPE onClose(
5109         ) = 0;
5110 
5111     virtual HRESULT STDMETHODCALLTYPE onDebuggerEvent(
5112         REFIID riid,
5113         IUnknown *punk) = 0;
5114 
5115 };
5116 #ifdef __CRT_UUID_DECL
5117 __CRT_UUID_DECL(IApplicationDebugger, 0x51973c2a, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
5118 #endif
5119 #else
5120 typedef struct IApplicationDebuggerVtbl {
5121     BEGIN_INTERFACE
5122 
5123     /*** IUnknown methods ***/
5124     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5125         IApplicationDebugger *This,
5126         REFIID riid,
5127         void **ppvObject);
5128 
5129     ULONG (STDMETHODCALLTYPE *AddRef)(
5130         IApplicationDebugger *This);
5131 
5132     ULONG (STDMETHODCALLTYPE *Release)(
5133         IApplicationDebugger *This);
5134 
5135     /*** IApplicationDebugger methods ***/
5136     HRESULT (STDMETHODCALLTYPE *QueryAlive)(
5137         IApplicationDebugger *This);
5138 
5139     HRESULT (STDMETHODCALLTYPE *CreateInstanceAtDebugger)(
5140         IApplicationDebugger *This,
5141         REFCLSID rclsid,
5142         IUnknown *pUnkOuter,
5143         DWORD dwClsContext,
5144         REFIID riid,
5145         IUnknown **ppvObject);
5146 
5147     HRESULT (STDMETHODCALLTYPE *onDebugOutput)(
5148         IApplicationDebugger *This,
5149         LPCOLESTR pstr);
5150 
5151     HRESULT (STDMETHODCALLTYPE *onHandleBreakPoint)(
5152         IApplicationDebugger *This,
5153         IRemoteDebugApplicationThread *prpt,
5154         BREAKREASON br,
5155         IActiveScriptErrorDebug *pError);
5156 
5157     HRESULT (STDMETHODCALLTYPE *onClose)(
5158         IApplicationDebugger *This);
5159 
5160     HRESULT (STDMETHODCALLTYPE *onDebuggerEvent)(
5161         IApplicationDebugger *This,
5162         REFIID riid,
5163         IUnknown *punk);
5164 
5165     END_INTERFACE
5166 } IApplicationDebuggerVtbl;
5167 
5168 interface IApplicationDebugger {
5169     CONST_VTBL IApplicationDebuggerVtbl* lpVtbl;
5170 };
5171 
5172 #ifdef COBJMACROS
5173 #ifndef WIDL_C_INLINE_WRAPPERS
5174 /*** IUnknown methods ***/
5175 #define IApplicationDebugger_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5176 #define IApplicationDebugger_AddRef(This) (This)->lpVtbl->AddRef(This)
5177 #define IApplicationDebugger_Release(This) (This)->lpVtbl->Release(This)
5178 /*** IApplicationDebugger methods ***/
5179 #define IApplicationDebugger_QueryAlive(This) (This)->lpVtbl->QueryAlive(This)
5180 #define IApplicationDebugger_CreateInstanceAtDebugger(This,rclsid,pUnkOuter,dwClsContext,riid,ppvObject) (This)->lpVtbl->CreateInstanceAtDebugger(This,rclsid,pUnkOuter,dwClsContext,riid,ppvObject)
5181 #define IApplicationDebugger_onDebugOutput(This,pstr) (This)->lpVtbl->onDebugOutput(This,pstr)
5182 #define IApplicationDebugger_onHandleBreakPoint(This,prpt,br,pError) (This)->lpVtbl->onHandleBreakPoint(This,prpt,br,pError)
5183 #define IApplicationDebugger_onClose(This) (This)->lpVtbl->onClose(This)
5184 #define IApplicationDebugger_onDebuggerEvent(This,riid,punk) (This)->lpVtbl->onDebuggerEvent(This,riid,punk)
5185 #else
5186 /*** IUnknown methods ***/
5187 static FORCEINLINE HRESULT IApplicationDebugger_QueryInterface(IApplicationDebugger* This,REFIID riid,void **ppvObject) {
5188     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5189 }
5190 static FORCEINLINE ULONG IApplicationDebugger_AddRef(IApplicationDebugger* This) {
5191     return This->lpVtbl->AddRef(This);
5192 }
5193 static FORCEINLINE ULONG IApplicationDebugger_Release(IApplicationDebugger* This) {
5194     return This->lpVtbl->Release(This);
5195 }
5196 /*** IApplicationDebugger methods ***/
5197 static FORCEINLINE HRESULT IApplicationDebugger_QueryAlive(IApplicationDebugger* This) {
5198     return This->lpVtbl->QueryAlive(This);
5199 }
5200 static FORCEINLINE HRESULT IApplicationDebugger_CreateInstanceAtDebugger(IApplicationDebugger* This,REFCLSID rclsid,IUnknown *pUnkOuter,DWORD dwClsContext,REFIID riid,IUnknown **ppvObject) {
5201     return This->lpVtbl->CreateInstanceAtDebugger(This,rclsid,pUnkOuter,dwClsContext,riid,ppvObject);
5202 }
5203 static FORCEINLINE HRESULT IApplicationDebugger_onDebugOutput(IApplicationDebugger* This,LPCOLESTR pstr) {
5204     return This->lpVtbl->onDebugOutput(This,pstr);
5205 }
5206 static FORCEINLINE HRESULT IApplicationDebugger_onHandleBreakPoint(IApplicationDebugger* This,IRemoteDebugApplicationThread *prpt,BREAKREASON br,IActiveScriptErrorDebug *pError) {
5207     return This->lpVtbl->onHandleBreakPoint(This,prpt,br,pError);
5208 }
5209 static FORCEINLINE HRESULT IApplicationDebugger_onClose(IApplicationDebugger* This) {
5210     return This->lpVtbl->onClose(This);
5211 }
5212 static FORCEINLINE HRESULT IApplicationDebugger_onDebuggerEvent(IApplicationDebugger* This,REFIID riid,IUnknown *punk) {
5213     return This->lpVtbl->onDebuggerEvent(This,riid,punk);
5214 }
5215 #endif
5216 #endif
5217 
5218 #endif
5219 
5220 
5221 #endif  /* __IApplicationDebugger_INTERFACE_DEFINED__ */
5222 
5223 /*****************************************************************************
5224  * IApplicationDebuggerUI interface
5225  */
5226 #ifndef __IApplicationDebuggerUI_INTERFACE_DEFINED__
5227 #define __IApplicationDebuggerUI_INTERFACE_DEFINED__
5228 
5229 DEFINE_GUID(IID_IApplicationDebuggerUI, 0x51973c2b, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
5230 #if defined(__cplusplus) && !defined(CINTERFACE)
5231 MIDL_INTERFACE("51973c2b-cb0c-11d0-b5c9-00a0244a0e7a")
5232 IApplicationDebuggerUI : public IUnknown
5233 {
5234     virtual HRESULT STDMETHODCALLTYPE BringDocumentToTop(
5235         IDebugDocumentText *pddt) = 0;
5236 
5237     virtual HRESULT STDMETHODCALLTYPE BringDocumentContextToTop(
5238         IDebugDocumentContext *pddc) = 0;
5239 
5240 };
5241 #ifdef __CRT_UUID_DECL
5242 __CRT_UUID_DECL(IApplicationDebuggerUI, 0x51973c2b, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
5243 #endif
5244 #else
5245 typedef struct IApplicationDebuggerUIVtbl {
5246     BEGIN_INTERFACE
5247 
5248     /*** IUnknown methods ***/
5249     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5250         IApplicationDebuggerUI *This,
5251         REFIID riid,
5252         void **ppvObject);
5253 
5254     ULONG (STDMETHODCALLTYPE *AddRef)(
5255         IApplicationDebuggerUI *This);
5256 
5257     ULONG (STDMETHODCALLTYPE *Release)(
5258         IApplicationDebuggerUI *This);
5259 
5260     /*** IApplicationDebuggerUI methods ***/
5261     HRESULT (STDMETHODCALLTYPE *BringDocumentToTop)(
5262         IApplicationDebuggerUI *This,
5263         IDebugDocumentText *pddt);
5264 
5265     HRESULT (STDMETHODCALLTYPE *BringDocumentContextToTop)(
5266         IApplicationDebuggerUI *This,
5267         IDebugDocumentContext *pddc);
5268 
5269     END_INTERFACE
5270 } IApplicationDebuggerUIVtbl;
5271 
5272 interface IApplicationDebuggerUI {
5273     CONST_VTBL IApplicationDebuggerUIVtbl* lpVtbl;
5274 };
5275 
5276 #ifdef COBJMACROS
5277 #ifndef WIDL_C_INLINE_WRAPPERS
5278 /*** IUnknown methods ***/
5279 #define IApplicationDebuggerUI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5280 #define IApplicationDebuggerUI_AddRef(This) (This)->lpVtbl->AddRef(This)
5281 #define IApplicationDebuggerUI_Release(This) (This)->lpVtbl->Release(This)
5282 /*** IApplicationDebuggerUI methods ***/
5283 #define IApplicationDebuggerUI_BringDocumentToTop(This,pddt) (This)->lpVtbl->BringDocumentToTop(This,pddt)
5284 #define IApplicationDebuggerUI_BringDocumentContextToTop(This,pddc) (This)->lpVtbl->BringDocumentContextToTop(This,pddc)
5285 #else
5286 /*** IUnknown methods ***/
5287 static FORCEINLINE HRESULT IApplicationDebuggerUI_QueryInterface(IApplicationDebuggerUI* This,REFIID riid,void **ppvObject) {
5288     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5289 }
5290 static FORCEINLINE ULONG IApplicationDebuggerUI_AddRef(IApplicationDebuggerUI* This) {
5291     return This->lpVtbl->AddRef(This);
5292 }
5293 static FORCEINLINE ULONG IApplicationDebuggerUI_Release(IApplicationDebuggerUI* This) {
5294     return This->lpVtbl->Release(This);
5295 }
5296 /*** IApplicationDebuggerUI methods ***/
5297 static FORCEINLINE HRESULT IApplicationDebuggerUI_BringDocumentToTop(IApplicationDebuggerUI* This,IDebugDocumentText *pddt) {
5298     return This->lpVtbl->BringDocumentToTop(This,pddt);
5299 }
5300 static FORCEINLINE HRESULT IApplicationDebuggerUI_BringDocumentContextToTop(IApplicationDebuggerUI* This,IDebugDocumentContext *pddc) {
5301     return This->lpVtbl->BringDocumentContextToTop(This,pddc);
5302 }
5303 #endif
5304 #endif
5305 
5306 #endif
5307 
5308 
5309 #endif  /* __IApplicationDebuggerUI_INTERFACE_DEFINED__ */
5310 
5311 /*****************************************************************************
5312  * IMachineDebugManager interface
5313  */
5314 #ifndef __IMachineDebugManager_INTERFACE_DEFINED__
5315 #define __IMachineDebugManager_INTERFACE_DEFINED__
5316 
5317 DEFINE_GUID(IID_IMachineDebugManager, 0x51973c2c, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
5318 #if defined(__cplusplus) && !defined(CINTERFACE)
5319 MIDL_INTERFACE("51973c2c-cb0c-11d0-b5c9-00a0244a0e7a")
5320 IMachineDebugManager : public IUnknown
5321 {
5322     virtual HRESULT STDMETHODCALLTYPE AddApplication(
5323         IRemoteDebugApplication *pda,
5324         DWORD *pdwAppCookie) = 0;
5325 
5326     virtual HRESULT STDMETHODCALLTYPE RemoveApplication(
5327         DWORD dwAppCookie) = 0;
5328 
5329     virtual HRESULT STDMETHODCALLTYPE EnumApplications(
5330         IEnumRemoteDebugApplications **ppeda) = 0;
5331 
5332 };
5333 #ifdef __CRT_UUID_DECL
5334 __CRT_UUID_DECL(IMachineDebugManager, 0x51973c2c, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
5335 #endif
5336 #else
5337 typedef struct IMachineDebugManagerVtbl {
5338     BEGIN_INTERFACE
5339 
5340     /*** IUnknown methods ***/
5341     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5342         IMachineDebugManager *This,
5343         REFIID riid,
5344         void **ppvObject);
5345 
5346     ULONG (STDMETHODCALLTYPE *AddRef)(
5347         IMachineDebugManager *This);
5348 
5349     ULONG (STDMETHODCALLTYPE *Release)(
5350         IMachineDebugManager *This);
5351 
5352     /*** IMachineDebugManager methods ***/
5353     HRESULT (STDMETHODCALLTYPE *AddApplication)(
5354         IMachineDebugManager *This,
5355         IRemoteDebugApplication *pda,
5356         DWORD *pdwAppCookie);
5357 
5358     HRESULT (STDMETHODCALLTYPE *RemoveApplication)(
5359         IMachineDebugManager *This,
5360         DWORD dwAppCookie);
5361 
5362     HRESULT (STDMETHODCALLTYPE *EnumApplications)(
5363         IMachineDebugManager *This,
5364         IEnumRemoteDebugApplications **ppeda);
5365 
5366     END_INTERFACE
5367 } IMachineDebugManagerVtbl;
5368 
5369 interface IMachineDebugManager {
5370     CONST_VTBL IMachineDebugManagerVtbl* lpVtbl;
5371 };
5372 
5373 #ifdef COBJMACROS
5374 #ifndef WIDL_C_INLINE_WRAPPERS
5375 /*** IUnknown methods ***/
5376 #define IMachineDebugManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5377 #define IMachineDebugManager_AddRef(This) (This)->lpVtbl->AddRef(This)
5378 #define IMachineDebugManager_Release(This) (This)->lpVtbl->Release(This)
5379 /*** IMachineDebugManager methods ***/
5380 #define IMachineDebugManager_AddApplication(This,pda,pdwAppCookie) (This)->lpVtbl->AddApplication(This,pda,pdwAppCookie)
5381 #define IMachineDebugManager_RemoveApplication(This,dwAppCookie) (This)->lpVtbl->RemoveApplication(This,dwAppCookie)
5382 #define IMachineDebugManager_EnumApplications(This,ppeda) (This)->lpVtbl->EnumApplications(This,ppeda)
5383 #else
5384 /*** IUnknown methods ***/
5385 static FORCEINLINE HRESULT IMachineDebugManager_QueryInterface(IMachineDebugManager* This,REFIID riid,void **ppvObject) {
5386     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5387 }
5388 static FORCEINLINE ULONG IMachineDebugManager_AddRef(IMachineDebugManager* This) {
5389     return This->lpVtbl->AddRef(This);
5390 }
5391 static FORCEINLINE ULONG IMachineDebugManager_Release(IMachineDebugManager* This) {
5392     return This->lpVtbl->Release(This);
5393 }
5394 /*** IMachineDebugManager methods ***/
5395 static FORCEINLINE HRESULT IMachineDebugManager_AddApplication(IMachineDebugManager* This,IRemoteDebugApplication *pda,DWORD *pdwAppCookie) {
5396     return This->lpVtbl->AddApplication(This,pda,pdwAppCookie);
5397 }
5398 static FORCEINLINE HRESULT IMachineDebugManager_RemoveApplication(IMachineDebugManager* This,DWORD dwAppCookie) {
5399     return This->lpVtbl->RemoveApplication(This,dwAppCookie);
5400 }
5401 static FORCEINLINE HRESULT IMachineDebugManager_EnumApplications(IMachineDebugManager* This,IEnumRemoteDebugApplications **ppeda) {
5402     return This->lpVtbl->EnumApplications(This,ppeda);
5403 }
5404 #endif
5405 #endif
5406 
5407 #endif
5408 
5409 
5410 #endif  /* __IMachineDebugManager_INTERFACE_DEFINED__ */
5411 
5412 /*****************************************************************************
5413  * IMachineDebugManagerCookie interface
5414  */
5415 #ifndef __IMachineDebugManagerCookie_INTERFACE_DEFINED__
5416 #define __IMachineDebugManagerCookie_INTERFACE_DEFINED__
5417 
5418 DEFINE_GUID(IID_IMachineDebugManagerCookie, 0x51973c2d, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
5419 #if defined(__cplusplus) && !defined(CINTERFACE)
5420 MIDL_INTERFACE("51973c2d-cb0c-11d0-b5c9-00a0244a0e7a")
5421 IMachineDebugManagerCookie : public IUnknown
5422 {
5423     virtual HRESULT STDMETHODCALLTYPE AddApplication(
5424         IRemoteDebugApplication *pda,
5425         DWORD dwDebugAppCookie,
5426         DWORD *pdwAppCookie) = 0;
5427 
5428     virtual HRESULT STDMETHODCALLTYPE RemoveApplication(
5429         DWORD dwDebugAppCookie,
5430         DWORD dwAppCookie) = 0;
5431 
5432     virtual HRESULT STDMETHODCALLTYPE EnumApplications(
5433         IEnumRemoteDebugApplications **ppeda) = 0;
5434 
5435 };
5436 #ifdef __CRT_UUID_DECL
5437 __CRT_UUID_DECL(IMachineDebugManagerCookie, 0x51973c2d, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
5438 #endif
5439 #else
5440 typedef struct IMachineDebugManagerCookieVtbl {
5441     BEGIN_INTERFACE
5442 
5443     /*** IUnknown methods ***/
5444     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5445         IMachineDebugManagerCookie *This,
5446         REFIID riid,
5447         void **ppvObject);
5448 
5449     ULONG (STDMETHODCALLTYPE *AddRef)(
5450         IMachineDebugManagerCookie *This);
5451 
5452     ULONG (STDMETHODCALLTYPE *Release)(
5453         IMachineDebugManagerCookie *This);
5454 
5455     /*** IMachineDebugManagerCookie methods ***/
5456     HRESULT (STDMETHODCALLTYPE *AddApplication)(
5457         IMachineDebugManagerCookie *This,
5458         IRemoteDebugApplication *pda,
5459         DWORD dwDebugAppCookie,
5460         DWORD *pdwAppCookie);
5461 
5462     HRESULT (STDMETHODCALLTYPE *RemoveApplication)(
5463         IMachineDebugManagerCookie *This,
5464         DWORD dwDebugAppCookie,
5465         DWORD dwAppCookie);
5466 
5467     HRESULT (STDMETHODCALLTYPE *EnumApplications)(
5468         IMachineDebugManagerCookie *This,
5469         IEnumRemoteDebugApplications **ppeda);
5470 
5471     END_INTERFACE
5472 } IMachineDebugManagerCookieVtbl;
5473 
5474 interface IMachineDebugManagerCookie {
5475     CONST_VTBL IMachineDebugManagerCookieVtbl* lpVtbl;
5476 };
5477 
5478 #ifdef COBJMACROS
5479 #ifndef WIDL_C_INLINE_WRAPPERS
5480 /*** IUnknown methods ***/
5481 #define IMachineDebugManagerCookie_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5482 #define IMachineDebugManagerCookie_AddRef(This) (This)->lpVtbl->AddRef(This)
5483 #define IMachineDebugManagerCookie_Release(This) (This)->lpVtbl->Release(This)
5484 /*** IMachineDebugManagerCookie methods ***/
5485 #define IMachineDebugManagerCookie_AddApplication(This,pda,dwDebugAppCookie,pdwAppCookie) (This)->lpVtbl->AddApplication(This,pda,dwDebugAppCookie,pdwAppCookie)
5486 #define IMachineDebugManagerCookie_RemoveApplication(This,dwDebugAppCookie,dwAppCookie) (This)->lpVtbl->RemoveApplication(This,dwDebugAppCookie,dwAppCookie)
5487 #define IMachineDebugManagerCookie_EnumApplications(This,ppeda) (This)->lpVtbl->EnumApplications(This,ppeda)
5488 #else
5489 /*** IUnknown methods ***/
5490 static FORCEINLINE HRESULT IMachineDebugManagerCookie_QueryInterface(IMachineDebugManagerCookie* This,REFIID riid,void **ppvObject) {
5491     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5492 }
5493 static FORCEINLINE ULONG IMachineDebugManagerCookie_AddRef(IMachineDebugManagerCookie* This) {
5494     return This->lpVtbl->AddRef(This);
5495 }
5496 static FORCEINLINE ULONG IMachineDebugManagerCookie_Release(IMachineDebugManagerCookie* This) {
5497     return This->lpVtbl->Release(This);
5498 }
5499 /*** IMachineDebugManagerCookie methods ***/
5500 static FORCEINLINE HRESULT IMachineDebugManagerCookie_AddApplication(IMachineDebugManagerCookie* This,IRemoteDebugApplication *pda,DWORD dwDebugAppCookie,DWORD *pdwAppCookie) {
5501     return This->lpVtbl->AddApplication(This,pda,dwDebugAppCookie,pdwAppCookie);
5502 }
5503 static FORCEINLINE HRESULT IMachineDebugManagerCookie_RemoveApplication(IMachineDebugManagerCookie* This,DWORD dwDebugAppCookie,DWORD dwAppCookie) {
5504     return This->lpVtbl->RemoveApplication(This,dwDebugAppCookie,dwAppCookie);
5505 }
5506 static FORCEINLINE HRESULT IMachineDebugManagerCookie_EnumApplications(IMachineDebugManagerCookie* This,IEnumRemoteDebugApplications **ppeda) {
5507     return This->lpVtbl->EnumApplications(This,ppeda);
5508 }
5509 #endif
5510 #endif
5511 
5512 #endif
5513 
5514 
5515 #endif  /* __IMachineDebugManagerCookie_INTERFACE_DEFINED__ */
5516 
5517 /*****************************************************************************
5518  * IMachineDebugManagerEvents interface
5519  */
5520 #ifndef __IMachineDebugManagerEvents_INTERFACE_DEFINED__
5521 #define __IMachineDebugManagerEvents_INTERFACE_DEFINED__
5522 
5523 DEFINE_GUID(IID_IMachineDebugManagerEvents, 0x51973c2e, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
5524 #if defined(__cplusplus) && !defined(CINTERFACE)
5525 MIDL_INTERFACE("51973c2e-cb0c-11d0-b5c9-00a0244a0e7a")
5526 IMachineDebugManagerEvents : public IUnknown
5527 {
5528     virtual HRESULT STDMETHODCALLTYPE onAddApplication(
5529         IRemoteDebugApplication *pda,
5530         DWORD dwAppCookie) = 0;
5531 
5532     virtual HRESULT STDMETHODCALLTYPE onRemoveApplication(
5533         IRemoteDebugApplication *pda,
5534         DWORD dwAppCookie) = 0;
5535 
5536 };
5537 #ifdef __CRT_UUID_DECL
5538 __CRT_UUID_DECL(IMachineDebugManagerEvents, 0x51973c2e, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
5539 #endif
5540 #else
5541 typedef struct IMachineDebugManagerEventsVtbl {
5542     BEGIN_INTERFACE
5543 
5544     /*** IUnknown methods ***/
5545     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5546         IMachineDebugManagerEvents *This,
5547         REFIID riid,
5548         void **ppvObject);
5549 
5550     ULONG (STDMETHODCALLTYPE *AddRef)(
5551         IMachineDebugManagerEvents *This);
5552 
5553     ULONG (STDMETHODCALLTYPE *Release)(
5554         IMachineDebugManagerEvents *This);
5555 
5556     /*** IMachineDebugManagerEvents methods ***/
5557     HRESULT (STDMETHODCALLTYPE *onAddApplication)(
5558         IMachineDebugManagerEvents *This,
5559         IRemoteDebugApplication *pda,
5560         DWORD dwAppCookie);
5561 
5562     HRESULT (STDMETHODCALLTYPE *onRemoveApplication)(
5563         IMachineDebugManagerEvents *This,
5564         IRemoteDebugApplication *pda,
5565         DWORD dwAppCookie);
5566 
5567     END_INTERFACE
5568 } IMachineDebugManagerEventsVtbl;
5569 
5570 interface IMachineDebugManagerEvents {
5571     CONST_VTBL IMachineDebugManagerEventsVtbl* lpVtbl;
5572 };
5573 
5574 #ifdef COBJMACROS
5575 #ifndef WIDL_C_INLINE_WRAPPERS
5576 /*** IUnknown methods ***/
5577 #define IMachineDebugManagerEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5578 #define IMachineDebugManagerEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
5579 #define IMachineDebugManagerEvents_Release(This) (This)->lpVtbl->Release(This)
5580 /*** IMachineDebugManagerEvents methods ***/
5581 #define IMachineDebugManagerEvents_onAddApplication(This,pda,dwAppCookie) (This)->lpVtbl->onAddApplication(This,pda,dwAppCookie)
5582 #define IMachineDebugManagerEvents_onRemoveApplication(This,pda,dwAppCookie) (This)->lpVtbl->onRemoveApplication(This,pda,dwAppCookie)
5583 #else
5584 /*** IUnknown methods ***/
5585 static FORCEINLINE HRESULT IMachineDebugManagerEvents_QueryInterface(IMachineDebugManagerEvents* This,REFIID riid,void **ppvObject) {
5586     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5587 }
5588 static FORCEINLINE ULONG IMachineDebugManagerEvents_AddRef(IMachineDebugManagerEvents* This) {
5589     return This->lpVtbl->AddRef(This);
5590 }
5591 static FORCEINLINE ULONG IMachineDebugManagerEvents_Release(IMachineDebugManagerEvents* This) {
5592     return This->lpVtbl->Release(This);
5593 }
5594 /*** IMachineDebugManagerEvents methods ***/
5595 static FORCEINLINE HRESULT IMachineDebugManagerEvents_onAddApplication(IMachineDebugManagerEvents* This,IRemoteDebugApplication *pda,DWORD dwAppCookie) {
5596     return This->lpVtbl->onAddApplication(This,pda,dwAppCookie);
5597 }
5598 static FORCEINLINE HRESULT IMachineDebugManagerEvents_onRemoveApplication(IMachineDebugManagerEvents* This,IRemoteDebugApplication *pda,DWORD dwAppCookie) {
5599     return This->lpVtbl->onRemoveApplication(This,pda,dwAppCookie);
5600 }
5601 #endif
5602 #endif
5603 
5604 #endif
5605 
5606 
5607 #endif  /* __IMachineDebugManagerEvents_INTERFACE_DEFINED__ */
5608 
5609 /*****************************************************************************
5610  * IProcessDebugManager32 interface
5611  */
5612 #ifndef __IProcessDebugManager32_INTERFACE_DEFINED__
5613 #define __IProcessDebugManager32_INTERFACE_DEFINED__
5614 
5615 DEFINE_GUID(IID_IProcessDebugManager32, 0x51973c2f, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
5616 #if defined(__cplusplus) && !defined(CINTERFACE)
5617 MIDL_INTERFACE("51973c2f-cb0c-11d0-b5c9-00a0244a0e7a")
5618 IProcessDebugManager32 : public IUnknown
5619 {
5620     virtual HRESULT STDMETHODCALLTYPE CreateApplication(
5621         IDebugApplication32 **ppda) = 0;
5622 
5623     virtual HRESULT STDMETHODCALLTYPE GetDefaultApplication(
5624         IDebugApplication32 **ppda) = 0;
5625 
5626     virtual HRESULT STDMETHODCALLTYPE AddApplication(
5627         IDebugApplication32 *pda,
5628         DWORD *pdwAppCookie) = 0;
5629 
5630     virtual HRESULT STDMETHODCALLTYPE RemoveApplication(
5631         DWORD dwAppCookie) = 0;
5632 
5633     virtual HRESULT STDMETHODCALLTYPE CreateDebugDocumentHelper(
5634         IUnknown *punkOuter,
5635         IDebugDocumentHelper32 **pddh) = 0;
5636 
5637 };
5638 #ifdef __CRT_UUID_DECL
5639 __CRT_UUID_DECL(IProcessDebugManager32, 0x51973c2f, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
5640 #endif
5641 #else
5642 typedef struct IProcessDebugManager32Vtbl {
5643     BEGIN_INTERFACE
5644 
5645     /*** IUnknown methods ***/
5646     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5647         IProcessDebugManager32 *This,
5648         REFIID riid,
5649         void **ppvObject);
5650 
5651     ULONG (STDMETHODCALLTYPE *AddRef)(
5652         IProcessDebugManager32 *This);
5653 
5654     ULONG (STDMETHODCALLTYPE *Release)(
5655         IProcessDebugManager32 *This);
5656 
5657     /*** IProcessDebugManager32 methods ***/
5658     HRESULT (STDMETHODCALLTYPE *CreateApplication)(
5659         IProcessDebugManager32 *This,
5660         IDebugApplication32 **ppda);
5661 
5662     HRESULT (STDMETHODCALLTYPE *GetDefaultApplication)(
5663         IProcessDebugManager32 *This,
5664         IDebugApplication32 **ppda);
5665 
5666     HRESULT (STDMETHODCALLTYPE *AddApplication)(
5667         IProcessDebugManager32 *This,
5668         IDebugApplication32 *pda,
5669         DWORD *pdwAppCookie);
5670 
5671     HRESULT (STDMETHODCALLTYPE *RemoveApplication)(
5672         IProcessDebugManager32 *This,
5673         DWORD dwAppCookie);
5674 
5675     HRESULT (STDMETHODCALLTYPE *CreateDebugDocumentHelper)(
5676         IProcessDebugManager32 *This,
5677         IUnknown *punkOuter,
5678         IDebugDocumentHelper32 **pddh);
5679 
5680     END_INTERFACE
5681 } IProcessDebugManager32Vtbl;
5682 
5683 interface IProcessDebugManager32 {
5684     CONST_VTBL IProcessDebugManager32Vtbl* lpVtbl;
5685 };
5686 
5687 #ifdef COBJMACROS
5688 #ifndef WIDL_C_INLINE_WRAPPERS
5689 /*** IUnknown methods ***/
5690 #define IProcessDebugManager32_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5691 #define IProcessDebugManager32_AddRef(This) (This)->lpVtbl->AddRef(This)
5692 #define IProcessDebugManager32_Release(This) (This)->lpVtbl->Release(This)
5693 /*** IProcessDebugManager32 methods ***/
5694 #define IProcessDebugManager32_CreateApplication(This,ppda) (This)->lpVtbl->CreateApplication(This,ppda)
5695 #define IProcessDebugManager32_GetDefaultApplication(This,ppda) (This)->lpVtbl->GetDefaultApplication(This,ppda)
5696 #define IProcessDebugManager32_AddApplication(This,pda,pdwAppCookie) (This)->lpVtbl->AddApplication(This,pda,pdwAppCookie)
5697 #define IProcessDebugManager32_RemoveApplication(This,dwAppCookie) (This)->lpVtbl->RemoveApplication(This,dwAppCookie)
5698 #define IProcessDebugManager32_CreateDebugDocumentHelper(This,punkOuter,pddh) (This)->lpVtbl->CreateDebugDocumentHelper(This,punkOuter,pddh)
5699 #else
5700 /*** IUnknown methods ***/
5701 static FORCEINLINE HRESULT IProcessDebugManager32_QueryInterface(IProcessDebugManager32* This,REFIID riid,void **ppvObject) {
5702     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5703 }
5704 static FORCEINLINE ULONG IProcessDebugManager32_AddRef(IProcessDebugManager32* This) {
5705     return This->lpVtbl->AddRef(This);
5706 }
5707 static FORCEINLINE ULONG IProcessDebugManager32_Release(IProcessDebugManager32* This) {
5708     return This->lpVtbl->Release(This);
5709 }
5710 /*** IProcessDebugManager32 methods ***/
5711 static FORCEINLINE HRESULT IProcessDebugManager32_CreateApplication(IProcessDebugManager32* This,IDebugApplication32 **ppda) {
5712     return This->lpVtbl->CreateApplication(This,ppda);
5713 }
5714 static FORCEINLINE HRESULT IProcessDebugManager32_GetDefaultApplication(IProcessDebugManager32* This,IDebugApplication32 **ppda) {
5715     return This->lpVtbl->GetDefaultApplication(This,ppda);
5716 }
5717 static FORCEINLINE HRESULT IProcessDebugManager32_AddApplication(IProcessDebugManager32* This,IDebugApplication32 *pda,DWORD *pdwAppCookie) {
5718     return This->lpVtbl->AddApplication(This,pda,pdwAppCookie);
5719 }
5720 static FORCEINLINE HRESULT IProcessDebugManager32_RemoveApplication(IProcessDebugManager32* This,DWORD dwAppCookie) {
5721     return This->lpVtbl->RemoveApplication(This,dwAppCookie);
5722 }
5723 static FORCEINLINE HRESULT IProcessDebugManager32_CreateDebugDocumentHelper(IProcessDebugManager32* This,IUnknown *punkOuter,IDebugDocumentHelper32 **pddh) {
5724     return This->lpVtbl->CreateDebugDocumentHelper(This,punkOuter,pddh);
5725 }
5726 #endif
5727 #endif
5728 
5729 #endif
5730 
5731 
5732 #endif  /* __IProcessDebugManager32_INTERFACE_DEFINED__ */
5733 
5734 /*****************************************************************************
5735  * IProcessDebugManager64 interface
5736  */
5737 #ifndef __IProcessDebugManager64_INTERFACE_DEFINED__
5738 #define __IProcessDebugManager64_INTERFACE_DEFINED__
5739 
5740 DEFINE_GUID(IID_IProcessDebugManager64, 0x56b9fc1c, 0x63a9, 0x4cc1, 0xac,0x21, 0x08,0x7d,0x69,0xa1,0x7f,0xab);
5741 #if defined(__cplusplus) && !defined(CINTERFACE)
5742 MIDL_INTERFACE("56b9fc1c-63a9-4cc1-ac21-087d69a17fab")
5743 IProcessDebugManager64 : public IUnknown
5744 {
5745     virtual HRESULT STDMETHODCALLTYPE CreateApplication(
5746         IDebugApplication64 **ppda) = 0;
5747 
5748     virtual HRESULT STDMETHODCALLTYPE GetDefaultApplication(
5749         IDebugApplication64 **ppda) = 0;
5750 
5751     virtual HRESULT STDMETHODCALLTYPE AddApplication(
5752         IDebugApplication64 *pda,
5753         DWORD *pdwAppCookie) = 0;
5754 
5755     virtual HRESULT STDMETHODCALLTYPE RemoveApplication(
5756         DWORD dwAppCookie) = 0;
5757 
5758     virtual HRESULT STDMETHODCALLTYPE CreateDebugDocumentHelper(
5759         IUnknown *punkOuter,
5760         IDebugDocumentHelper64 **pddh) = 0;
5761 
5762 };
5763 #ifdef __CRT_UUID_DECL
5764 __CRT_UUID_DECL(IProcessDebugManager64, 0x56b9fc1c, 0x63a9, 0x4cc1, 0xac,0x21, 0x08,0x7d,0x69,0xa1,0x7f,0xab)
5765 #endif
5766 #else
5767 typedef struct IProcessDebugManager64Vtbl {
5768     BEGIN_INTERFACE
5769 
5770     /*** IUnknown methods ***/
5771     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5772         IProcessDebugManager64 *This,
5773         REFIID riid,
5774         void **ppvObject);
5775 
5776     ULONG (STDMETHODCALLTYPE *AddRef)(
5777         IProcessDebugManager64 *This);
5778 
5779     ULONG (STDMETHODCALLTYPE *Release)(
5780         IProcessDebugManager64 *This);
5781 
5782     /*** IProcessDebugManager64 methods ***/
5783     HRESULT (STDMETHODCALLTYPE *CreateApplication)(
5784         IProcessDebugManager64 *This,
5785         IDebugApplication64 **ppda);
5786 
5787     HRESULT (STDMETHODCALLTYPE *GetDefaultApplication)(
5788         IProcessDebugManager64 *This,
5789         IDebugApplication64 **ppda);
5790 
5791     HRESULT (STDMETHODCALLTYPE *AddApplication)(
5792         IProcessDebugManager64 *This,
5793         IDebugApplication64 *pda,
5794         DWORD *pdwAppCookie);
5795 
5796     HRESULT (STDMETHODCALLTYPE *RemoveApplication)(
5797         IProcessDebugManager64 *This,
5798         DWORD dwAppCookie);
5799 
5800     HRESULT (STDMETHODCALLTYPE *CreateDebugDocumentHelper)(
5801         IProcessDebugManager64 *This,
5802         IUnknown *punkOuter,
5803         IDebugDocumentHelper64 **pddh);
5804 
5805     END_INTERFACE
5806 } IProcessDebugManager64Vtbl;
5807 
5808 interface IProcessDebugManager64 {
5809     CONST_VTBL IProcessDebugManager64Vtbl* lpVtbl;
5810 };
5811 
5812 #ifdef COBJMACROS
5813 #ifndef WIDL_C_INLINE_WRAPPERS
5814 /*** IUnknown methods ***/
5815 #define IProcessDebugManager64_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5816 #define IProcessDebugManager64_AddRef(This) (This)->lpVtbl->AddRef(This)
5817 #define IProcessDebugManager64_Release(This) (This)->lpVtbl->Release(This)
5818 /*** IProcessDebugManager64 methods ***/
5819 #define IProcessDebugManager64_CreateApplication(This,ppda) (This)->lpVtbl->CreateApplication(This,ppda)
5820 #define IProcessDebugManager64_GetDefaultApplication(This,ppda) (This)->lpVtbl->GetDefaultApplication(This,ppda)
5821 #define IProcessDebugManager64_AddApplication(This,pda,pdwAppCookie) (This)->lpVtbl->AddApplication(This,pda,pdwAppCookie)
5822 #define IProcessDebugManager64_RemoveApplication(This,dwAppCookie) (This)->lpVtbl->RemoveApplication(This,dwAppCookie)
5823 #define IProcessDebugManager64_CreateDebugDocumentHelper(This,punkOuter,pddh) (This)->lpVtbl->CreateDebugDocumentHelper(This,punkOuter,pddh)
5824 #else
5825 /*** IUnknown methods ***/
5826 static FORCEINLINE HRESULT IProcessDebugManager64_QueryInterface(IProcessDebugManager64* This,REFIID riid,void **ppvObject) {
5827     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5828 }
5829 static FORCEINLINE ULONG IProcessDebugManager64_AddRef(IProcessDebugManager64* This) {
5830     return This->lpVtbl->AddRef(This);
5831 }
5832 static FORCEINLINE ULONG IProcessDebugManager64_Release(IProcessDebugManager64* This) {
5833     return This->lpVtbl->Release(This);
5834 }
5835 /*** IProcessDebugManager64 methods ***/
5836 static FORCEINLINE HRESULT IProcessDebugManager64_CreateApplication(IProcessDebugManager64* This,IDebugApplication64 **ppda) {
5837     return This->lpVtbl->CreateApplication(This,ppda);
5838 }
5839 static FORCEINLINE HRESULT IProcessDebugManager64_GetDefaultApplication(IProcessDebugManager64* This,IDebugApplication64 **ppda) {
5840     return This->lpVtbl->GetDefaultApplication(This,ppda);
5841 }
5842 static FORCEINLINE HRESULT IProcessDebugManager64_AddApplication(IProcessDebugManager64* This,IDebugApplication64 *pda,DWORD *pdwAppCookie) {
5843     return This->lpVtbl->AddApplication(This,pda,pdwAppCookie);
5844 }
5845 static FORCEINLINE HRESULT IProcessDebugManager64_RemoveApplication(IProcessDebugManager64* This,DWORD dwAppCookie) {
5846     return This->lpVtbl->RemoveApplication(This,dwAppCookie);
5847 }
5848 static FORCEINLINE HRESULT IProcessDebugManager64_CreateDebugDocumentHelper(IProcessDebugManager64* This,IUnknown *punkOuter,IDebugDocumentHelper64 **pddh) {
5849     return This->lpVtbl->CreateDebugDocumentHelper(This,punkOuter,pddh);
5850 }
5851 #endif
5852 #endif
5853 
5854 #endif
5855 
5856 
5857 #endif  /* __IProcessDebugManager64_INTERFACE_DEFINED__ */
5858 
5859 /*****************************************************************************
5860  * IRemoteDebugApplication interface
5861  */
5862 #ifndef __IRemoteDebugApplication_INTERFACE_DEFINED__
5863 #define __IRemoteDebugApplication_INTERFACE_DEFINED__
5864 
5865 DEFINE_GUID(IID_IRemoteDebugApplication, 0x51973c30, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
5866 #if defined(__cplusplus) && !defined(CINTERFACE)
5867 MIDL_INTERFACE("51973c30-cb0c-11d0-b5c9-00a0244a0e7a")
5868 IRemoteDebugApplication : public IUnknown
5869 {
5870     virtual HRESULT STDMETHODCALLTYPE ResumeFromBreakPoint(
5871         IRemoteDebugApplicationThread *prptFocus,
5872         BREAKRESUMEACTION bra,
5873         ERRORRESUMEACTION era) = 0;
5874 
5875     virtual HRESULT STDMETHODCALLTYPE CauseBreak(
5876         ) = 0;
5877 
5878     virtual HRESULT STDMETHODCALLTYPE ConnectDebugger(
5879         IApplicationDebugger *pad) = 0;
5880 
5881     virtual HRESULT STDMETHODCALLTYPE DisconnectDebugger(
5882         ) = 0;
5883 
5884     virtual HRESULT STDMETHODCALLTYPE GetDebugger(
5885         IApplicationDebugger **pad) = 0;
5886 
5887     virtual HRESULT STDMETHODCALLTYPE CreateInstanceAtApplication(
5888         REFCLSID rclsid,
5889         IUnknown *pUnkOuter,
5890         DWORD dwClsContext,
5891         REFIID riid,
5892         IUnknown **ppvObject) = 0;
5893 
5894     virtual HRESULT STDMETHODCALLTYPE QueryAlive(
5895         ) = 0;
5896 
5897     virtual HRESULT STDMETHODCALLTYPE EnumThreads(
5898         IEnumRemoteDebugApplicationThreads **pperdat) = 0;
5899 
5900     virtual HRESULT STDMETHODCALLTYPE GetName(
5901         BSTR *pbstrName) = 0;
5902 
5903     virtual HRESULT STDMETHODCALLTYPE GetRootNode(
5904         IDebugApplicationNode **ppdanRoot) = 0;
5905 
5906     virtual HRESULT STDMETHODCALLTYPE EnumGlobalExpressionContexts(
5907         IEnumDebugExpressionContexts **ppedec) = 0;
5908 
5909 };
5910 #ifdef __CRT_UUID_DECL
5911 __CRT_UUID_DECL(IRemoteDebugApplication, 0x51973c30, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
5912 #endif
5913 #else
5914 typedef struct IRemoteDebugApplicationVtbl {
5915     BEGIN_INTERFACE
5916 
5917     /*** IUnknown methods ***/
5918     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5919         IRemoteDebugApplication *This,
5920         REFIID riid,
5921         void **ppvObject);
5922 
5923     ULONG (STDMETHODCALLTYPE *AddRef)(
5924         IRemoteDebugApplication *This);
5925 
5926     ULONG (STDMETHODCALLTYPE *Release)(
5927         IRemoteDebugApplication *This);
5928 
5929     /*** IRemoteDebugApplication methods ***/
5930     HRESULT (STDMETHODCALLTYPE *ResumeFromBreakPoint)(
5931         IRemoteDebugApplication *This,
5932         IRemoteDebugApplicationThread *prptFocus,
5933         BREAKRESUMEACTION bra,
5934         ERRORRESUMEACTION era);
5935 
5936     HRESULT (STDMETHODCALLTYPE *CauseBreak)(
5937         IRemoteDebugApplication *This);
5938 
5939     HRESULT (STDMETHODCALLTYPE *ConnectDebugger)(
5940         IRemoteDebugApplication *This,
5941         IApplicationDebugger *pad);
5942 
5943     HRESULT (STDMETHODCALLTYPE *DisconnectDebugger)(
5944         IRemoteDebugApplication *This);
5945 
5946     HRESULT (STDMETHODCALLTYPE *GetDebugger)(
5947         IRemoteDebugApplication *This,
5948         IApplicationDebugger **pad);
5949 
5950     HRESULT (STDMETHODCALLTYPE *CreateInstanceAtApplication)(
5951         IRemoteDebugApplication *This,
5952         REFCLSID rclsid,
5953         IUnknown *pUnkOuter,
5954         DWORD dwClsContext,
5955         REFIID riid,
5956         IUnknown **ppvObject);
5957 
5958     HRESULT (STDMETHODCALLTYPE *QueryAlive)(
5959         IRemoteDebugApplication *This);
5960 
5961     HRESULT (STDMETHODCALLTYPE *EnumThreads)(
5962         IRemoteDebugApplication *This,
5963         IEnumRemoteDebugApplicationThreads **pperdat);
5964 
5965     HRESULT (STDMETHODCALLTYPE *GetName)(
5966         IRemoteDebugApplication *This,
5967         BSTR *pbstrName);
5968 
5969     HRESULT (STDMETHODCALLTYPE *GetRootNode)(
5970         IRemoteDebugApplication *This,
5971         IDebugApplicationNode **ppdanRoot);
5972 
5973     HRESULT (STDMETHODCALLTYPE *EnumGlobalExpressionContexts)(
5974         IRemoteDebugApplication *This,
5975         IEnumDebugExpressionContexts **ppedec);
5976 
5977     END_INTERFACE
5978 } IRemoteDebugApplicationVtbl;
5979 
5980 interface IRemoteDebugApplication {
5981     CONST_VTBL IRemoteDebugApplicationVtbl* lpVtbl;
5982 };
5983 
5984 #ifdef COBJMACROS
5985 #ifndef WIDL_C_INLINE_WRAPPERS
5986 /*** IUnknown methods ***/
5987 #define IRemoteDebugApplication_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5988 #define IRemoteDebugApplication_AddRef(This) (This)->lpVtbl->AddRef(This)
5989 #define IRemoteDebugApplication_Release(This) (This)->lpVtbl->Release(This)
5990 /*** IRemoteDebugApplication methods ***/
5991 #define IRemoteDebugApplication_ResumeFromBreakPoint(This,prptFocus,bra,era) (This)->lpVtbl->ResumeFromBreakPoint(This,prptFocus,bra,era)
5992 #define IRemoteDebugApplication_CauseBreak(This) (This)->lpVtbl->CauseBreak(This)
5993 #define IRemoteDebugApplication_ConnectDebugger(This,pad) (This)->lpVtbl->ConnectDebugger(This,pad)
5994 #define IRemoteDebugApplication_DisconnectDebugger(This) (This)->lpVtbl->DisconnectDebugger(This)
5995 #define IRemoteDebugApplication_GetDebugger(This,pad) (This)->lpVtbl->GetDebugger(This,pad)
5996 #define IRemoteDebugApplication_CreateInstanceAtApplication(This,rclsid,pUnkOuter,dwClsContext,riid,ppvObject) (This)->lpVtbl->CreateInstanceAtApplication(This,rclsid,pUnkOuter,dwClsContext,riid,ppvObject)
5997 #define IRemoteDebugApplication_QueryAlive(This) (This)->lpVtbl->QueryAlive(This)
5998 #define IRemoteDebugApplication_EnumThreads(This,pperdat) (This)->lpVtbl->EnumThreads(This,pperdat)
5999 #define IRemoteDebugApplication_GetName(This,pbstrName) (This)->lpVtbl->GetName(This,pbstrName)
6000 #define IRemoteDebugApplication_GetRootNode(This,ppdanRoot) (This)->lpVtbl->GetRootNode(This,ppdanRoot)
6001 #define IRemoteDebugApplication_EnumGlobalExpressionContexts(This,ppedec) (This)->lpVtbl->EnumGlobalExpressionContexts(This,ppedec)
6002 #else
6003 /*** IUnknown methods ***/
6004 static FORCEINLINE HRESULT IRemoteDebugApplication_QueryInterface(IRemoteDebugApplication* This,REFIID riid,void **ppvObject) {
6005     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6006 }
6007 static FORCEINLINE ULONG IRemoteDebugApplication_AddRef(IRemoteDebugApplication* This) {
6008     return This->lpVtbl->AddRef(This);
6009 }
6010 static FORCEINLINE ULONG IRemoteDebugApplication_Release(IRemoteDebugApplication* This) {
6011     return This->lpVtbl->Release(This);
6012 }
6013 /*** IRemoteDebugApplication methods ***/
6014 static FORCEINLINE HRESULT IRemoteDebugApplication_ResumeFromBreakPoint(IRemoteDebugApplication* This,IRemoteDebugApplicationThread *prptFocus,BREAKRESUMEACTION bra,ERRORRESUMEACTION era) {
6015     return This->lpVtbl->ResumeFromBreakPoint(This,prptFocus,bra,era);
6016 }
6017 static FORCEINLINE HRESULT IRemoteDebugApplication_CauseBreak(IRemoteDebugApplication* This) {
6018     return This->lpVtbl->CauseBreak(This);
6019 }
6020 static FORCEINLINE HRESULT IRemoteDebugApplication_ConnectDebugger(IRemoteDebugApplication* This,IApplicationDebugger *pad) {
6021     return This->lpVtbl->ConnectDebugger(This,pad);
6022 }
6023 static FORCEINLINE HRESULT IRemoteDebugApplication_DisconnectDebugger(IRemoteDebugApplication* This) {
6024     return This->lpVtbl->DisconnectDebugger(This);
6025 }
6026 static FORCEINLINE HRESULT IRemoteDebugApplication_GetDebugger(IRemoteDebugApplication* This,IApplicationDebugger **pad) {
6027     return This->lpVtbl->GetDebugger(This,pad);
6028 }
6029 static FORCEINLINE HRESULT IRemoteDebugApplication_CreateInstanceAtApplication(IRemoteDebugApplication* This,REFCLSID rclsid,IUnknown *pUnkOuter,DWORD dwClsContext,REFIID riid,IUnknown **ppvObject) {
6030     return This->lpVtbl->CreateInstanceAtApplication(This,rclsid,pUnkOuter,dwClsContext,riid,ppvObject);
6031 }
6032 static FORCEINLINE HRESULT IRemoteDebugApplication_QueryAlive(IRemoteDebugApplication* This) {
6033     return This->lpVtbl->QueryAlive(This);
6034 }
6035 static FORCEINLINE HRESULT IRemoteDebugApplication_EnumThreads(IRemoteDebugApplication* This,IEnumRemoteDebugApplicationThreads **pperdat) {
6036     return This->lpVtbl->EnumThreads(This,pperdat);
6037 }
6038 static FORCEINLINE HRESULT IRemoteDebugApplication_GetName(IRemoteDebugApplication* This,BSTR *pbstrName) {
6039     return This->lpVtbl->GetName(This,pbstrName);
6040 }
6041 static FORCEINLINE HRESULT IRemoteDebugApplication_GetRootNode(IRemoteDebugApplication* This,IDebugApplicationNode **ppdanRoot) {
6042     return This->lpVtbl->GetRootNode(This,ppdanRoot);
6043 }
6044 static FORCEINLINE HRESULT IRemoteDebugApplication_EnumGlobalExpressionContexts(IRemoteDebugApplication* This,IEnumDebugExpressionContexts **ppedec) {
6045     return This->lpVtbl->EnumGlobalExpressionContexts(This,ppedec);
6046 }
6047 #endif
6048 #endif
6049 
6050 #endif
6051 
6052 
6053 #endif  /* __IRemoteDebugApplication_INTERFACE_DEFINED__ */
6054 
6055 /*****************************************************************************
6056  * IDebugApplication32 interface
6057  */
6058 #ifndef __IDebugApplication32_INTERFACE_DEFINED__
6059 #define __IDebugApplication32_INTERFACE_DEFINED__
6060 
6061 DEFINE_GUID(IID_IDebugApplication32, 0x51973c32, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
6062 #if defined(__cplusplus) && !defined(CINTERFACE)
6063 MIDL_INTERFACE("51973c32-cb0c-11d0-b5c9-00a0244a0e7a")
6064 IDebugApplication32 : public IRemoteDebugApplication
6065 {
6066     virtual HRESULT STDMETHODCALLTYPE SetName(
6067         LPCOLESTR pstrName) = 0;
6068 
6069     virtual HRESULT STDMETHODCALLTYPE StepOutComplete(
6070         ) = 0;
6071 
6072     virtual HRESULT STDMETHODCALLTYPE DebugOutput(
6073         LPCOLESTR pstr) = 0;
6074 
6075     virtual HRESULT STDMETHODCALLTYPE StartDebugSession(
6076         ) = 0;
6077 
6078     virtual HRESULT STDMETHODCALLTYPE HandleBreakPoint(
6079         BREAKREASON br,
6080         BREAKRESUMEACTION *pbra) = 0;
6081 
6082     virtual HRESULT STDMETHODCALLTYPE Close(
6083         ) = 0;
6084 
6085     virtual HRESULT STDMETHODCALLTYPE GetBreakFlags(
6086         APPBREAKFLAGS *pabf,
6087         IRemoteDebugApplicationThread **pprdatSteppingThread) = 0;
6088 
6089     virtual HRESULT STDMETHODCALLTYPE GetCurrentThread(
6090         IDebugApplicationThread **pat) = 0;
6091 
6092     virtual HRESULT STDMETHODCALLTYPE CreateAsyncDebugOperation(
6093         IDebugSyncOperation *psdo,
6094         IDebugAsyncOperation **ppado) = 0;
6095 
6096     virtual HRESULT STDMETHODCALLTYPE AddStackFrameSniffer(
6097         IDebugStackFrameSniffer *pdsfs,
6098         DWORD *pdwCookie) = 0;
6099 
6100     virtual HRESULT STDMETHODCALLTYPE RemoveStackFrameSniffer(
6101         DWORD dwCookie) = 0;
6102 
6103     virtual HRESULT STDMETHODCALLTYPE QueryCurrentThreadIsDebuggerThread(
6104         ) = 0;
6105 
6106     virtual HRESULT STDMETHODCALLTYPE SynchronousCallInDebuggerThread(
6107         IDebugThreadCall32 *pptc,
6108         DWORD dwParam1,
6109         DWORD dwParam2,
6110         DWORD dwParam3) = 0;
6111 
6112     virtual HRESULT STDMETHODCALLTYPE CreateApplicationNode(
6113         IDebugApplicationNode **ppdanNew) = 0;
6114 
6115     virtual HRESULT STDMETHODCALLTYPE FireDebuggerEvent(
6116         REFGUID riid,
6117         IUnknown *punk) = 0;
6118 
6119     virtual HRESULT STDMETHODCALLTYPE HandleRuntimeError(
6120         IActiveScriptErrorDebug *pErrorDebug,
6121         IActiveScriptSite *pScriptSite,
6122         BREAKRESUMEACTION *pbra,
6123         ERRORRESUMEACTION *perra,
6124         WINBOOL *pfCallOnScriptError) = 0;
6125 
6126     virtual WINBOOL STDMETHODCALLTYPE FCanJitDebug(
6127         ) = 0;
6128 
6129     virtual WINBOOL STDMETHODCALLTYPE FIsAutoJitDebugEnabled(
6130         ) = 0;
6131 
6132     virtual HRESULT STDMETHODCALLTYPE AddGlobalExpressionContextProvider(
6133         IProvideExpressionContexts *pdsfs,
6134         DWORD *pdwCookie) = 0;
6135 
6136     virtual HRESULT STDMETHODCALLTYPE RemoveGlobalExpressionContextProvider(
6137         DWORD dwCookie) = 0;
6138 
6139 };
6140 #ifdef __CRT_UUID_DECL
6141 __CRT_UUID_DECL(IDebugApplication32, 0x51973c32, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
6142 #endif
6143 #else
6144 typedef struct IDebugApplication32Vtbl {
6145     BEGIN_INTERFACE
6146 
6147     /*** IUnknown methods ***/
6148     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6149         IDebugApplication32 *This,
6150         REFIID riid,
6151         void **ppvObject);
6152 
6153     ULONG (STDMETHODCALLTYPE *AddRef)(
6154         IDebugApplication32 *This);
6155 
6156     ULONG (STDMETHODCALLTYPE *Release)(
6157         IDebugApplication32 *This);
6158 
6159     /*** IRemoteDebugApplication methods ***/
6160     HRESULT (STDMETHODCALLTYPE *ResumeFromBreakPoint)(
6161         IDebugApplication32 *This,
6162         IRemoteDebugApplicationThread *prptFocus,
6163         BREAKRESUMEACTION bra,
6164         ERRORRESUMEACTION era);
6165 
6166     HRESULT (STDMETHODCALLTYPE *CauseBreak)(
6167         IDebugApplication32 *This);
6168 
6169     HRESULT (STDMETHODCALLTYPE *ConnectDebugger)(
6170         IDebugApplication32 *This,
6171         IApplicationDebugger *pad);
6172 
6173     HRESULT (STDMETHODCALLTYPE *DisconnectDebugger)(
6174         IDebugApplication32 *This);
6175 
6176     HRESULT (STDMETHODCALLTYPE *GetDebugger)(
6177         IDebugApplication32 *This,
6178         IApplicationDebugger **pad);
6179 
6180     HRESULT (STDMETHODCALLTYPE *CreateInstanceAtApplication)(
6181         IDebugApplication32 *This,
6182         REFCLSID rclsid,
6183         IUnknown *pUnkOuter,
6184         DWORD dwClsContext,
6185         REFIID riid,
6186         IUnknown **ppvObject);
6187 
6188     HRESULT (STDMETHODCALLTYPE *QueryAlive)(
6189         IDebugApplication32 *This);
6190 
6191     HRESULT (STDMETHODCALLTYPE *EnumThreads)(
6192         IDebugApplication32 *This,
6193         IEnumRemoteDebugApplicationThreads **pperdat);
6194 
6195     HRESULT (STDMETHODCALLTYPE *GetName)(
6196         IDebugApplication32 *This,
6197         BSTR *pbstrName);
6198 
6199     HRESULT (STDMETHODCALLTYPE *GetRootNode)(
6200         IDebugApplication32 *This,
6201         IDebugApplicationNode **ppdanRoot);
6202 
6203     HRESULT (STDMETHODCALLTYPE *EnumGlobalExpressionContexts)(
6204         IDebugApplication32 *This,
6205         IEnumDebugExpressionContexts **ppedec);
6206 
6207     /*** IDebugApplication32 methods ***/
6208     HRESULT (STDMETHODCALLTYPE *SetName)(
6209         IDebugApplication32 *This,
6210         LPCOLESTR pstrName);
6211 
6212     HRESULT (STDMETHODCALLTYPE *StepOutComplete)(
6213         IDebugApplication32 *This);
6214 
6215     HRESULT (STDMETHODCALLTYPE *DebugOutput)(
6216         IDebugApplication32 *This,
6217         LPCOLESTR pstr);
6218 
6219     HRESULT (STDMETHODCALLTYPE *StartDebugSession)(
6220         IDebugApplication32 *This);
6221 
6222     HRESULT (STDMETHODCALLTYPE *HandleBreakPoint)(
6223         IDebugApplication32 *This,
6224         BREAKREASON br,
6225         BREAKRESUMEACTION *pbra);
6226 
6227     HRESULT (STDMETHODCALLTYPE *Close)(
6228         IDebugApplication32 *This);
6229 
6230     HRESULT (STDMETHODCALLTYPE *GetBreakFlags)(
6231         IDebugApplication32 *This,
6232         APPBREAKFLAGS *pabf,
6233         IRemoteDebugApplicationThread **pprdatSteppingThread);
6234 
6235     HRESULT (STDMETHODCALLTYPE *GetCurrentThread)(
6236         IDebugApplication32 *This,
6237         IDebugApplicationThread **pat);
6238 
6239     HRESULT (STDMETHODCALLTYPE *CreateAsyncDebugOperation)(
6240         IDebugApplication32 *This,
6241         IDebugSyncOperation *psdo,
6242         IDebugAsyncOperation **ppado);
6243 
6244     HRESULT (STDMETHODCALLTYPE *AddStackFrameSniffer)(
6245         IDebugApplication32 *This,
6246         IDebugStackFrameSniffer *pdsfs,
6247         DWORD *pdwCookie);
6248 
6249     HRESULT (STDMETHODCALLTYPE *RemoveStackFrameSniffer)(
6250         IDebugApplication32 *This,
6251         DWORD dwCookie);
6252 
6253     HRESULT (STDMETHODCALLTYPE *QueryCurrentThreadIsDebuggerThread)(
6254         IDebugApplication32 *This);
6255 
6256     HRESULT (STDMETHODCALLTYPE *SynchronousCallInDebuggerThread)(
6257         IDebugApplication32 *This,
6258         IDebugThreadCall32 *pptc,
6259         DWORD dwParam1,
6260         DWORD dwParam2,
6261         DWORD dwParam3);
6262 
6263     HRESULT (STDMETHODCALLTYPE *CreateApplicationNode)(
6264         IDebugApplication32 *This,
6265         IDebugApplicationNode **ppdanNew);
6266 
6267     HRESULT (STDMETHODCALLTYPE *FireDebuggerEvent)(
6268         IDebugApplication32 *This,
6269         REFGUID riid,
6270         IUnknown *punk);
6271 
6272     HRESULT (STDMETHODCALLTYPE *HandleRuntimeError)(
6273         IDebugApplication32 *This,
6274         IActiveScriptErrorDebug *pErrorDebug,
6275         IActiveScriptSite *pScriptSite,
6276         BREAKRESUMEACTION *pbra,
6277         ERRORRESUMEACTION *perra,
6278         WINBOOL *pfCallOnScriptError);
6279 
6280     WINBOOL (STDMETHODCALLTYPE *FCanJitDebug)(
6281         IDebugApplication32 *This);
6282 
6283     WINBOOL (STDMETHODCALLTYPE *FIsAutoJitDebugEnabled)(
6284         IDebugApplication32 *This);
6285 
6286     HRESULT (STDMETHODCALLTYPE *AddGlobalExpressionContextProvider)(
6287         IDebugApplication32 *This,
6288         IProvideExpressionContexts *pdsfs,
6289         DWORD *pdwCookie);
6290 
6291     HRESULT (STDMETHODCALLTYPE *RemoveGlobalExpressionContextProvider)(
6292         IDebugApplication32 *This,
6293         DWORD dwCookie);
6294 
6295     END_INTERFACE
6296 } IDebugApplication32Vtbl;
6297 
6298 interface IDebugApplication32 {
6299     CONST_VTBL IDebugApplication32Vtbl* lpVtbl;
6300 };
6301 
6302 #ifdef COBJMACROS
6303 #ifndef WIDL_C_INLINE_WRAPPERS
6304 /*** IUnknown methods ***/
6305 #define IDebugApplication32_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6306 #define IDebugApplication32_AddRef(This) (This)->lpVtbl->AddRef(This)
6307 #define IDebugApplication32_Release(This) (This)->lpVtbl->Release(This)
6308 /*** IRemoteDebugApplication methods ***/
6309 #define IDebugApplication32_ResumeFromBreakPoint(This,prptFocus,bra,era) (This)->lpVtbl->ResumeFromBreakPoint(This,prptFocus,bra,era)
6310 #define IDebugApplication32_CauseBreak(This) (This)->lpVtbl->CauseBreak(This)
6311 #define IDebugApplication32_ConnectDebugger(This,pad) (This)->lpVtbl->ConnectDebugger(This,pad)
6312 #define IDebugApplication32_DisconnectDebugger(This) (This)->lpVtbl->DisconnectDebugger(This)
6313 #define IDebugApplication32_GetDebugger(This,pad) (This)->lpVtbl->GetDebugger(This,pad)
6314 #define IDebugApplication32_CreateInstanceAtApplication(This,rclsid,pUnkOuter,dwClsContext,riid,ppvObject) (This)->lpVtbl->CreateInstanceAtApplication(This,rclsid,pUnkOuter,dwClsContext,riid,ppvObject)
6315 #define IDebugApplication32_QueryAlive(This) (This)->lpVtbl->QueryAlive(This)
6316 #define IDebugApplication32_EnumThreads(This,pperdat) (This)->lpVtbl->EnumThreads(This,pperdat)
6317 #define IDebugApplication32_GetName(This,pbstrName) (This)->lpVtbl->GetName(This,pbstrName)
6318 #define IDebugApplication32_GetRootNode(This,ppdanRoot) (This)->lpVtbl->GetRootNode(This,ppdanRoot)
6319 #define IDebugApplication32_EnumGlobalExpressionContexts(This,ppedec) (This)->lpVtbl->EnumGlobalExpressionContexts(This,ppedec)
6320 /*** IDebugApplication32 methods ***/
6321 #define IDebugApplication32_SetName(This,pstrName) (This)->lpVtbl->SetName(This,pstrName)
6322 #define IDebugApplication32_StepOutComplete(This) (This)->lpVtbl->StepOutComplete(This)
6323 #define IDebugApplication32_DebugOutput(This,pstr) (This)->lpVtbl->DebugOutput(This,pstr)
6324 #define IDebugApplication32_StartDebugSession(This) (This)->lpVtbl->StartDebugSession(This)
6325 #define IDebugApplication32_HandleBreakPoint(This,br,pbra) (This)->lpVtbl->HandleBreakPoint(This,br,pbra)
6326 #define IDebugApplication32_Close(This) (This)->lpVtbl->Close(This)
6327 #define IDebugApplication32_GetBreakFlags(This,pabf,pprdatSteppingThread) (This)->lpVtbl->GetBreakFlags(This,pabf,pprdatSteppingThread)
6328 #define IDebugApplication32_GetCurrentThread(This,pat) (This)->lpVtbl->GetCurrentThread(This,pat)
6329 #define IDebugApplication32_CreateAsyncDebugOperation(This,psdo,ppado) (This)->lpVtbl->CreateAsyncDebugOperation(This,psdo,ppado)
6330 #define IDebugApplication32_AddStackFrameSniffer(This,pdsfs,pdwCookie) (This)->lpVtbl->AddStackFrameSniffer(This,pdsfs,pdwCookie)
6331 #define IDebugApplication32_RemoveStackFrameSniffer(This,dwCookie) (This)->lpVtbl->RemoveStackFrameSniffer(This,dwCookie)
6332 #define IDebugApplication32_QueryCurrentThreadIsDebuggerThread(This) (This)->lpVtbl->QueryCurrentThreadIsDebuggerThread(This)
6333 #define IDebugApplication32_SynchronousCallInDebuggerThread(This,pptc,dwParam1,dwParam2,dwParam3) (This)->lpVtbl->SynchronousCallInDebuggerThread(This,pptc,dwParam1,dwParam2,dwParam3)
6334 #define IDebugApplication32_CreateApplicationNode(This,ppdanNew) (This)->lpVtbl->CreateApplicationNode(This,ppdanNew)
6335 #define IDebugApplication32_FireDebuggerEvent(This,riid,punk) (This)->lpVtbl->FireDebuggerEvent(This,riid,punk)
6336 #define IDebugApplication32_HandleRuntimeError(This,pErrorDebug,pScriptSite,pbra,perra,pfCallOnScriptError) (This)->lpVtbl->HandleRuntimeError(This,pErrorDebug,pScriptSite,pbra,perra,pfCallOnScriptError)
6337 #define IDebugApplication32_FCanJitDebug(This) (This)->lpVtbl->FCanJitDebug(This)
6338 #define IDebugApplication32_FIsAutoJitDebugEnabled(This) (This)->lpVtbl->FIsAutoJitDebugEnabled(This)
6339 #define IDebugApplication32_AddGlobalExpressionContextProvider(This,pdsfs,pdwCookie) (This)->lpVtbl->AddGlobalExpressionContextProvider(This,pdsfs,pdwCookie)
6340 #define IDebugApplication32_RemoveGlobalExpressionContextProvider(This,dwCookie) (This)->lpVtbl->RemoveGlobalExpressionContextProvider(This,dwCookie)
6341 #else
6342 /*** IUnknown methods ***/
6343 static FORCEINLINE HRESULT IDebugApplication32_QueryInterface(IDebugApplication32* This,REFIID riid,void **ppvObject) {
6344     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6345 }
6346 static FORCEINLINE ULONG IDebugApplication32_AddRef(IDebugApplication32* This) {
6347     return This->lpVtbl->AddRef(This);
6348 }
6349 static FORCEINLINE ULONG IDebugApplication32_Release(IDebugApplication32* This) {
6350     return This->lpVtbl->Release(This);
6351 }
6352 /*** IRemoteDebugApplication methods ***/
6353 static FORCEINLINE HRESULT IDebugApplication32_ResumeFromBreakPoint(IDebugApplication32* This,IRemoteDebugApplicationThread *prptFocus,BREAKRESUMEACTION bra,ERRORRESUMEACTION era) {
6354     return This->lpVtbl->ResumeFromBreakPoint(This,prptFocus,bra,era);
6355 }
6356 static FORCEINLINE HRESULT IDebugApplication32_CauseBreak(IDebugApplication32* This) {
6357     return This->lpVtbl->CauseBreak(This);
6358 }
6359 static FORCEINLINE HRESULT IDebugApplication32_ConnectDebugger(IDebugApplication32* This,IApplicationDebugger *pad) {
6360     return This->lpVtbl->ConnectDebugger(This,pad);
6361 }
6362 static FORCEINLINE HRESULT IDebugApplication32_DisconnectDebugger(IDebugApplication32* This) {
6363     return This->lpVtbl->DisconnectDebugger(This);
6364 }
6365 static FORCEINLINE HRESULT IDebugApplication32_GetDebugger(IDebugApplication32* This,IApplicationDebugger **pad) {
6366     return This->lpVtbl->GetDebugger(This,pad);
6367 }
6368 static FORCEINLINE HRESULT IDebugApplication32_CreateInstanceAtApplication(IDebugApplication32* This,REFCLSID rclsid,IUnknown *pUnkOuter,DWORD dwClsContext,REFIID riid,IUnknown **ppvObject) {
6369     return This->lpVtbl->CreateInstanceAtApplication(This,rclsid,pUnkOuter,dwClsContext,riid,ppvObject);
6370 }
6371 static FORCEINLINE HRESULT IDebugApplication32_QueryAlive(IDebugApplication32* This) {
6372     return This->lpVtbl->QueryAlive(This);
6373 }
6374 static FORCEINLINE HRESULT IDebugApplication32_EnumThreads(IDebugApplication32* This,IEnumRemoteDebugApplicationThreads **pperdat) {
6375     return This->lpVtbl->EnumThreads(This,pperdat);
6376 }
6377 static FORCEINLINE HRESULT IDebugApplication32_GetName(IDebugApplication32* This,BSTR *pbstrName) {
6378     return This->lpVtbl->GetName(This,pbstrName);
6379 }
6380 static FORCEINLINE HRESULT IDebugApplication32_GetRootNode(IDebugApplication32* This,IDebugApplicationNode **ppdanRoot) {
6381     return This->lpVtbl->GetRootNode(This,ppdanRoot);
6382 }
6383 static FORCEINLINE HRESULT IDebugApplication32_EnumGlobalExpressionContexts(IDebugApplication32* This,IEnumDebugExpressionContexts **ppedec) {
6384     return This->lpVtbl->EnumGlobalExpressionContexts(This,ppedec);
6385 }
6386 /*** IDebugApplication32 methods ***/
6387 static FORCEINLINE HRESULT IDebugApplication32_SetName(IDebugApplication32* This,LPCOLESTR pstrName) {
6388     return This->lpVtbl->SetName(This,pstrName);
6389 }
6390 static FORCEINLINE HRESULT IDebugApplication32_StepOutComplete(IDebugApplication32* This) {
6391     return This->lpVtbl->StepOutComplete(This);
6392 }
6393 static FORCEINLINE HRESULT IDebugApplication32_DebugOutput(IDebugApplication32* This,LPCOLESTR pstr) {
6394     return This->lpVtbl->DebugOutput(This,pstr);
6395 }
6396 static FORCEINLINE HRESULT IDebugApplication32_StartDebugSession(IDebugApplication32* This) {
6397     return This->lpVtbl->StartDebugSession(This);
6398 }
6399 static FORCEINLINE HRESULT IDebugApplication32_HandleBreakPoint(IDebugApplication32* This,BREAKREASON br,BREAKRESUMEACTION *pbra) {
6400     return This->lpVtbl->HandleBreakPoint(This,br,pbra);
6401 }
6402 static FORCEINLINE HRESULT IDebugApplication32_Close(IDebugApplication32* This) {
6403     return This->lpVtbl->Close(This);
6404 }
6405 static FORCEINLINE HRESULT IDebugApplication32_GetBreakFlags(IDebugApplication32* This,APPBREAKFLAGS *pabf,IRemoteDebugApplicationThread **pprdatSteppingThread) {
6406     return This->lpVtbl->GetBreakFlags(This,pabf,pprdatSteppingThread);
6407 }
6408 static FORCEINLINE HRESULT IDebugApplication32_GetCurrentThread(IDebugApplication32* This,IDebugApplicationThread **pat) {
6409     return This->lpVtbl->GetCurrentThread(This,pat);
6410 }
6411 static FORCEINLINE HRESULT IDebugApplication32_CreateAsyncDebugOperation(IDebugApplication32* This,IDebugSyncOperation *psdo,IDebugAsyncOperation **ppado) {
6412     return This->lpVtbl->CreateAsyncDebugOperation(This,psdo,ppado);
6413 }
6414 static FORCEINLINE HRESULT IDebugApplication32_AddStackFrameSniffer(IDebugApplication32* This,IDebugStackFrameSniffer *pdsfs,DWORD *pdwCookie) {
6415     return This->lpVtbl->AddStackFrameSniffer(This,pdsfs,pdwCookie);
6416 }
6417 static FORCEINLINE HRESULT IDebugApplication32_RemoveStackFrameSniffer(IDebugApplication32* This,DWORD dwCookie) {
6418     return This->lpVtbl->RemoveStackFrameSniffer(This,dwCookie);
6419 }
6420 static FORCEINLINE HRESULT IDebugApplication32_QueryCurrentThreadIsDebuggerThread(IDebugApplication32* This) {
6421     return This->lpVtbl->QueryCurrentThreadIsDebuggerThread(This);
6422 }
6423 static FORCEINLINE HRESULT IDebugApplication32_SynchronousCallInDebuggerThread(IDebugApplication32* This,IDebugThreadCall32 *pptc,DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) {
6424     return This->lpVtbl->SynchronousCallInDebuggerThread(This,pptc,dwParam1,dwParam2,dwParam3);
6425 }
6426 static FORCEINLINE HRESULT IDebugApplication32_CreateApplicationNode(IDebugApplication32* This,IDebugApplicationNode **ppdanNew) {
6427     return This->lpVtbl->CreateApplicationNode(This,ppdanNew);
6428 }
6429 static FORCEINLINE HRESULT IDebugApplication32_FireDebuggerEvent(IDebugApplication32* This,REFGUID riid,IUnknown *punk) {
6430     return This->lpVtbl->FireDebuggerEvent(This,riid,punk);
6431 }
6432 static FORCEINLINE HRESULT IDebugApplication32_HandleRuntimeError(IDebugApplication32* This,IActiveScriptErrorDebug *pErrorDebug,IActiveScriptSite *pScriptSite,BREAKRESUMEACTION *pbra,ERRORRESUMEACTION *perra,WINBOOL *pfCallOnScriptError) {
6433     return This->lpVtbl->HandleRuntimeError(This,pErrorDebug,pScriptSite,pbra,perra,pfCallOnScriptError);
6434 }
6435 static FORCEINLINE WINBOOL IDebugApplication32_FCanJitDebug(IDebugApplication32* This) {
6436     return This->lpVtbl->FCanJitDebug(This);
6437 }
6438 static FORCEINLINE WINBOOL IDebugApplication32_FIsAutoJitDebugEnabled(IDebugApplication32* This) {
6439     return This->lpVtbl->FIsAutoJitDebugEnabled(This);
6440 }
6441 static FORCEINLINE HRESULT IDebugApplication32_AddGlobalExpressionContextProvider(IDebugApplication32* This,IProvideExpressionContexts *pdsfs,DWORD *pdwCookie) {
6442     return This->lpVtbl->AddGlobalExpressionContextProvider(This,pdsfs,pdwCookie);
6443 }
6444 static FORCEINLINE HRESULT IDebugApplication32_RemoveGlobalExpressionContextProvider(IDebugApplication32* This,DWORD dwCookie) {
6445     return This->lpVtbl->RemoveGlobalExpressionContextProvider(This,dwCookie);
6446 }
6447 #endif
6448 #endif
6449 
6450 #endif
6451 
6452 
6453 #endif  /* __IDebugApplication32_INTERFACE_DEFINED__ */
6454 
6455 /*****************************************************************************
6456  * IDebugApplication64 interface
6457  */
6458 #ifndef __IDebugApplication64_INTERFACE_DEFINED__
6459 #define __IDebugApplication64_INTERFACE_DEFINED__
6460 
6461 DEFINE_GUID(IID_IDebugApplication64, 0x4dedc754, 0x04c7, 0x4f10, 0x9e,0x60, 0x16,0xa3,0x90,0xfe,0x6e,0x62);
6462 #if defined(__cplusplus) && !defined(CINTERFACE)
6463 MIDL_INTERFACE("4dedc754-04c7-4f10-9e60-16a390fe6e62")
6464 IDebugApplication64 : public IRemoteDebugApplication
6465 {
6466     virtual HRESULT STDMETHODCALLTYPE SetName(
6467         LPCOLESTR pstrName) = 0;
6468 
6469     virtual HRESULT STDMETHODCALLTYPE StepOutComplete(
6470         ) = 0;
6471 
6472     virtual HRESULT STDMETHODCALLTYPE DebugOutput(
6473         LPCOLESTR pstr) = 0;
6474 
6475     virtual HRESULT STDMETHODCALLTYPE StartDebugSession(
6476         ) = 0;
6477 
6478     virtual HRESULT STDMETHODCALLTYPE HandleBreakPoint(
6479         BREAKREASON br,
6480         BREAKRESUMEACTION *pbra) = 0;
6481 
6482     virtual HRESULT STDMETHODCALLTYPE Close(
6483         ) = 0;
6484 
6485     virtual HRESULT STDMETHODCALLTYPE GetBreakFlags(
6486         APPBREAKFLAGS *pabf,
6487         IRemoteDebugApplicationThread **pprdatSteppingThread) = 0;
6488 
6489     virtual HRESULT STDMETHODCALLTYPE GetCurrentThread(
6490         IDebugApplicationThread **pat) = 0;
6491 
6492     virtual HRESULT STDMETHODCALLTYPE CreateAsyncDebugOperation(
6493         IDebugSyncOperation *psdo,
6494         IDebugAsyncOperation **ppado) = 0;
6495 
6496     virtual HRESULT STDMETHODCALLTYPE AddStackFrameSniffer(
6497         IDebugStackFrameSniffer *pdsfs,
6498         DWORD *pdwCookie) = 0;
6499 
6500     virtual HRESULT STDMETHODCALLTYPE RemoveStackFrameSniffer(
6501         DWORD dwCookie) = 0;
6502 
6503     virtual HRESULT STDMETHODCALLTYPE QueryCurrentThreadIsDebuggerThread(
6504         ) = 0;
6505 
6506     virtual HRESULT STDMETHODCALLTYPE SynchronousCallInDebuggerThread(
6507         IDebugThreadCall64 *pptc,
6508         DWORDLONG dwParam1,
6509         DWORDLONG dwParam2,
6510         DWORDLONG dwParam3) = 0;
6511 
6512     virtual HRESULT STDMETHODCALLTYPE CreateApplicationNode(
6513         IDebugApplicationNode **ppdanNew) = 0;
6514 
6515     virtual HRESULT STDMETHODCALLTYPE FireDebuggerEvent(
6516         REFGUID riid,
6517         IUnknown *punk) = 0;
6518 
6519     virtual HRESULT STDMETHODCALLTYPE HandleRuntimeError(
6520         IActiveScriptErrorDebug *pErrorDebug,
6521         IActiveScriptSite *pScriptSite,
6522         BREAKRESUMEACTION *pbra,
6523         ERRORRESUMEACTION *perra,
6524         WINBOOL *pfCallOnScriptError) = 0;
6525 
6526     virtual WINBOOL STDMETHODCALLTYPE FCanJitDebug(
6527         ) = 0;
6528 
6529     virtual WINBOOL STDMETHODCALLTYPE FIsAutoJitDebugEnabled(
6530         ) = 0;
6531 
6532     virtual HRESULT STDMETHODCALLTYPE AddGlobalExpressionContextProvider(
6533         IProvideExpressionContexts *pdsfs,
6534         DWORDLONG *pdwCookie) = 0;
6535 
6536     virtual HRESULT STDMETHODCALLTYPE RemoveGlobalExpressionContextProvider(
6537         DWORDLONG dwCookie) = 0;
6538 
6539 };
6540 #ifdef __CRT_UUID_DECL
6541 __CRT_UUID_DECL(IDebugApplication64, 0x4dedc754, 0x04c7, 0x4f10, 0x9e,0x60, 0x16,0xa3,0x90,0xfe,0x6e,0x62)
6542 #endif
6543 #else
6544 typedef struct IDebugApplication64Vtbl {
6545     BEGIN_INTERFACE
6546 
6547     /*** IUnknown methods ***/
6548     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6549         IDebugApplication64 *This,
6550         REFIID riid,
6551         void **ppvObject);
6552 
6553     ULONG (STDMETHODCALLTYPE *AddRef)(
6554         IDebugApplication64 *This);
6555 
6556     ULONG (STDMETHODCALLTYPE *Release)(
6557         IDebugApplication64 *This);
6558 
6559     /*** IRemoteDebugApplication methods ***/
6560     HRESULT (STDMETHODCALLTYPE *ResumeFromBreakPoint)(
6561         IDebugApplication64 *This,
6562         IRemoteDebugApplicationThread *prptFocus,
6563         BREAKRESUMEACTION bra,
6564         ERRORRESUMEACTION era);
6565 
6566     HRESULT (STDMETHODCALLTYPE *CauseBreak)(
6567         IDebugApplication64 *This);
6568 
6569     HRESULT (STDMETHODCALLTYPE *ConnectDebugger)(
6570         IDebugApplication64 *This,
6571         IApplicationDebugger *pad);
6572 
6573     HRESULT (STDMETHODCALLTYPE *DisconnectDebugger)(
6574         IDebugApplication64 *This);
6575 
6576     HRESULT (STDMETHODCALLTYPE *GetDebugger)(
6577         IDebugApplication64 *This,
6578         IApplicationDebugger **pad);
6579 
6580     HRESULT (STDMETHODCALLTYPE *CreateInstanceAtApplication)(
6581         IDebugApplication64 *This,
6582         REFCLSID rclsid,
6583         IUnknown *pUnkOuter,
6584         DWORD dwClsContext,
6585         REFIID riid,
6586         IUnknown **ppvObject);
6587 
6588     HRESULT (STDMETHODCALLTYPE *QueryAlive)(
6589         IDebugApplication64 *This);
6590 
6591     HRESULT (STDMETHODCALLTYPE *EnumThreads)(
6592         IDebugApplication64 *This,
6593         IEnumRemoteDebugApplicationThreads **pperdat);
6594 
6595     HRESULT (STDMETHODCALLTYPE *GetName)(
6596         IDebugApplication64 *This,
6597         BSTR *pbstrName);
6598 
6599     HRESULT (STDMETHODCALLTYPE *GetRootNode)(
6600         IDebugApplication64 *This,
6601         IDebugApplicationNode **ppdanRoot);
6602 
6603     HRESULT (STDMETHODCALLTYPE *EnumGlobalExpressionContexts)(
6604         IDebugApplication64 *This,
6605         IEnumDebugExpressionContexts **ppedec);
6606 
6607     /*** IDebugApplication64 methods ***/
6608     HRESULT (STDMETHODCALLTYPE *SetName)(
6609         IDebugApplication64 *This,
6610         LPCOLESTR pstrName);
6611 
6612     HRESULT (STDMETHODCALLTYPE *StepOutComplete)(
6613         IDebugApplication64 *This);
6614 
6615     HRESULT (STDMETHODCALLTYPE *DebugOutput)(
6616         IDebugApplication64 *This,
6617         LPCOLESTR pstr);
6618 
6619     HRESULT (STDMETHODCALLTYPE *StartDebugSession)(
6620         IDebugApplication64 *This);
6621 
6622     HRESULT (STDMETHODCALLTYPE *HandleBreakPoint)(
6623         IDebugApplication64 *This,
6624         BREAKREASON br,
6625         BREAKRESUMEACTION *pbra);
6626 
6627     HRESULT (STDMETHODCALLTYPE *Close)(
6628         IDebugApplication64 *This);
6629 
6630     HRESULT (STDMETHODCALLTYPE *GetBreakFlags)(
6631         IDebugApplication64 *This,
6632         APPBREAKFLAGS *pabf,
6633         IRemoteDebugApplicationThread **pprdatSteppingThread);
6634 
6635     HRESULT (STDMETHODCALLTYPE *GetCurrentThread)(
6636         IDebugApplication64 *This,
6637         IDebugApplicationThread **pat);
6638 
6639     HRESULT (STDMETHODCALLTYPE *CreateAsyncDebugOperation)(
6640         IDebugApplication64 *This,
6641         IDebugSyncOperation *psdo,
6642         IDebugAsyncOperation **ppado);
6643 
6644     HRESULT (STDMETHODCALLTYPE *AddStackFrameSniffer)(
6645         IDebugApplication64 *This,
6646         IDebugStackFrameSniffer *pdsfs,
6647         DWORD *pdwCookie);
6648 
6649     HRESULT (STDMETHODCALLTYPE *RemoveStackFrameSniffer)(
6650         IDebugApplication64 *This,
6651         DWORD dwCookie);
6652 
6653     HRESULT (STDMETHODCALLTYPE *QueryCurrentThreadIsDebuggerThread)(
6654         IDebugApplication64 *This);
6655 
6656     HRESULT (STDMETHODCALLTYPE *SynchronousCallInDebuggerThread)(
6657         IDebugApplication64 *This,
6658         IDebugThreadCall64 *pptc,
6659         DWORDLONG dwParam1,
6660         DWORDLONG dwParam2,
6661         DWORDLONG dwParam3);
6662 
6663     HRESULT (STDMETHODCALLTYPE *CreateApplicationNode)(
6664         IDebugApplication64 *This,
6665         IDebugApplicationNode **ppdanNew);
6666 
6667     HRESULT (STDMETHODCALLTYPE *FireDebuggerEvent)(
6668         IDebugApplication64 *This,
6669         REFGUID riid,
6670         IUnknown *punk);
6671 
6672     HRESULT (STDMETHODCALLTYPE *HandleRuntimeError)(
6673         IDebugApplication64 *This,
6674         IActiveScriptErrorDebug *pErrorDebug,
6675         IActiveScriptSite *pScriptSite,
6676         BREAKRESUMEACTION *pbra,
6677         ERRORRESUMEACTION *perra,
6678         WINBOOL *pfCallOnScriptError);
6679 
6680     WINBOOL (STDMETHODCALLTYPE *FCanJitDebug)(
6681         IDebugApplication64 *This);
6682 
6683     WINBOOL (STDMETHODCALLTYPE *FIsAutoJitDebugEnabled)(
6684         IDebugApplication64 *This);
6685 
6686     HRESULT (STDMETHODCALLTYPE *AddGlobalExpressionContextProvider)(
6687         IDebugApplication64 *This,
6688         IProvideExpressionContexts *pdsfs,
6689         DWORDLONG *pdwCookie);
6690 
6691     HRESULT (STDMETHODCALLTYPE *RemoveGlobalExpressionContextProvider)(
6692         IDebugApplication64 *This,
6693         DWORDLONG dwCookie);
6694 
6695     END_INTERFACE
6696 } IDebugApplication64Vtbl;
6697 
6698 interface IDebugApplication64 {
6699     CONST_VTBL IDebugApplication64Vtbl* lpVtbl;
6700 };
6701 
6702 #ifdef COBJMACROS
6703 #ifndef WIDL_C_INLINE_WRAPPERS
6704 /*** IUnknown methods ***/
6705 #define IDebugApplication64_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6706 #define IDebugApplication64_AddRef(This) (This)->lpVtbl->AddRef(This)
6707 #define IDebugApplication64_Release(This) (This)->lpVtbl->Release(This)
6708 /*** IRemoteDebugApplication methods ***/
6709 #define IDebugApplication64_ResumeFromBreakPoint(This,prptFocus,bra,era) (This)->lpVtbl->ResumeFromBreakPoint(This,prptFocus,bra,era)
6710 #define IDebugApplication64_CauseBreak(This) (This)->lpVtbl->CauseBreak(This)
6711 #define IDebugApplication64_ConnectDebugger(This,pad) (This)->lpVtbl->ConnectDebugger(This,pad)
6712 #define IDebugApplication64_DisconnectDebugger(This) (This)->lpVtbl->DisconnectDebugger(This)
6713 #define IDebugApplication64_GetDebugger(This,pad) (This)->lpVtbl->GetDebugger(This,pad)
6714 #define IDebugApplication64_CreateInstanceAtApplication(This,rclsid,pUnkOuter,dwClsContext,riid,ppvObject) (This)->lpVtbl->CreateInstanceAtApplication(This,rclsid,pUnkOuter,dwClsContext,riid,ppvObject)
6715 #define IDebugApplication64_QueryAlive(This) (This)->lpVtbl->QueryAlive(This)
6716 #define IDebugApplication64_EnumThreads(This,pperdat) (This)->lpVtbl->EnumThreads(This,pperdat)
6717 #define IDebugApplication64_GetName(This,pbstrName) (This)->lpVtbl->GetName(This,pbstrName)
6718 #define IDebugApplication64_GetRootNode(This,ppdanRoot) (This)->lpVtbl->GetRootNode(This,ppdanRoot)
6719 #define IDebugApplication64_EnumGlobalExpressionContexts(This,ppedec) (This)->lpVtbl->EnumGlobalExpressionContexts(This,ppedec)
6720 /*** IDebugApplication64 methods ***/
6721 #define IDebugApplication64_SetName(This,pstrName) (This)->lpVtbl->SetName(This,pstrName)
6722 #define IDebugApplication64_StepOutComplete(This) (This)->lpVtbl->StepOutComplete(This)
6723 #define IDebugApplication64_DebugOutput(This,pstr) (This)->lpVtbl->DebugOutput(This,pstr)
6724 #define IDebugApplication64_StartDebugSession(This) (This)->lpVtbl->StartDebugSession(This)
6725 #define IDebugApplication64_HandleBreakPoint(This,br,pbra) (This)->lpVtbl->HandleBreakPoint(This,br,pbra)
6726 #define IDebugApplication64_Close(This) (This)->lpVtbl->Close(This)
6727 #define IDebugApplication64_GetBreakFlags(This,pabf,pprdatSteppingThread) (This)->lpVtbl->GetBreakFlags(This,pabf,pprdatSteppingThread)
6728 #define IDebugApplication64_GetCurrentThread(This,pat) (This)->lpVtbl->GetCurrentThread(This,pat)
6729 #define IDebugApplication64_CreateAsyncDebugOperation(This,psdo,ppado) (This)->lpVtbl->CreateAsyncDebugOperation(This,psdo,ppado)
6730 #define IDebugApplication64_AddStackFrameSniffer(This,pdsfs,pdwCookie) (This)->lpVtbl->AddStackFrameSniffer(This,pdsfs,pdwCookie)
6731 #define IDebugApplication64_RemoveStackFrameSniffer(This,dwCookie) (This)->lpVtbl->RemoveStackFrameSniffer(This,dwCookie)
6732 #define IDebugApplication64_QueryCurrentThreadIsDebuggerThread(This) (This)->lpVtbl->QueryCurrentThreadIsDebuggerThread(This)
6733 #define IDebugApplication64_SynchronousCallInDebuggerThread(This,pptc,dwParam1,dwParam2,dwParam3) (This)->lpVtbl->SynchronousCallInDebuggerThread(This,pptc,dwParam1,dwParam2,dwParam3)
6734 #define IDebugApplication64_CreateApplicationNode(This,ppdanNew) (This)->lpVtbl->CreateApplicationNode(This,ppdanNew)
6735 #define IDebugApplication64_FireDebuggerEvent(This,riid,punk) (This)->lpVtbl->FireDebuggerEvent(This,riid,punk)
6736 #define IDebugApplication64_HandleRuntimeError(This,pErrorDebug,pScriptSite,pbra,perra,pfCallOnScriptError) (This)->lpVtbl->HandleRuntimeError(This,pErrorDebug,pScriptSite,pbra,perra,pfCallOnScriptError)
6737 #define IDebugApplication64_FCanJitDebug(This) (This)->lpVtbl->FCanJitDebug(This)
6738 #define IDebugApplication64_FIsAutoJitDebugEnabled(This) (This)->lpVtbl->FIsAutoJitDebugEnabled(This)
6739 #define IDebugApplication64_AddGlobalExpressionContextProvider(This,pdsfs,pdwCookie) (This)->lpVtbl->AddGlobalExpressionContextProvider(This,pdsfs,pdwCookie)
6740 #define IDebugApplication64_RemoveGlobalExpressionContextProvider(This,dwCookie) (This)->lpVtbl->RemoveGlobalExpressionContextProvider(This,dwCookie)
6741 #else
6742 /*** IUnknown methods ***/
6743 static FORCEINLINE HRESULT IDebugApplication64_QueryInterface(IDebugApplication64* This,REFIID riid,void **ppvObject) {
6744     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6745 }
6746 static FORCEINLINE ULONG IDebugApplication64_AddRef(IDebugApplication64* This) {
6747     return This->lpVtbl->AddRef(This);
6748 }
6749 static FORCEINLINE ULONG IDebugApplication64_Release(IDebugApplication64* This) {
6750     return This->lpVtbl->Release(This);
6751 }
6752 /*** IRemoteDebugApplication methods ***/
6753 static FORCEINLINE HRESULT IDebugApplication64_ResumeFromBreakPoint(IDebugApplication64* This,IRemoteDebugApplicationThread *prptFocus,BREAKRESUMEACTION bra,ERRORRESUMEACTION era) {
6754     return This->lpVtbl->ResumeFromBreakPoint(This,prptFocus,bra,era);
6755 }
6756 static FORCEINLINE HRESULT IDebugApplication64_CauseBreak(IDebugApplication64* This) {
6757     return This->lpVtbl->CauseBreak(This);
6758 }
6759 static FORCEINLINE HRESULT IDebugApplication64_ConnectDebugger(IDebugApplication64* This,IApplicationDebugger *pad) {
6760     return This->lpVtbl->ConnectDebugger(This,pad);
6761 }
6762 static FORCEINLINE HRESULT IDebugApplication64_DisconnectDebugger(IDebugApplication64* This) {
6763     return This->lpVtbl->DisconnectDebugger(This);
6764 }
6765 static FORCEINLINE HRESULT IDebugApplication64_GetDebugger(IDebugApplication64* This,IApplicationDebugger **pad) {
6766     return This->lpVtbl->GetDebugger(This,pad);
6767 }
6768 static FORCEINLINE HRESULT IDebugApplication64_CreateInstanceAtApplication(IDebugApplication64* This,REFCLSID rclsid,IUnknown *pUnkOuter,DWORD dwClsContext,REFIID riid,IUnknown **ppvObject) {
6769     return This->lpVtbl->CreateInstanceAtApplication(This,rclsid,pUnkOuter,dwClsContext,riid,ppvObject);
6770 }
6771 static FORCEINLINE HRESULT IDebugApplication64_QueryAlive(IDebugApplication64* This) {
6772     return This->lpVtbl->QueryAlive(This);
6773 }
6774 static FORCEINLINE HRESULT IDebugApplication64_EnumThreads(IDebugApplication64* This,IEnumRemoteDebugApplicationThreads **pperdat) {
6775     return This->lpVtbl->EnumThreads(This,pperdat);
6776 }
6777 static FORCEINLINE HRESULT IDebugApplication64_GetName(IDebugApplication64* This,BSTR *pbstrName) {
6778     return This->lpVtbl->GetName(This,pbstrName);
6779 }
6780 static FORCEINLINE HRESULT IDebugApplication64_GetRootNode(IDebugApplication64* This,IDebugApplicationNode **ppdanRoot) {
6781     return This->lpVtbl->GetRootNode(This,ppdanRoot);
6782 }
6783 static FORCEINLINE HRESULT IDebugApplication64_EnumGlobalExpressionContexts(IDebugApplication64* This,IEnumDebugExpressionContexts **ppedec) {
6784     return This->lpVtbl->EnumGlobalExpressionContexts(This,ppedec);
6785 }
6786 /*** IDebugApplication64 methods ***/
6787 static FORCEINLINE HRESULT IDebugApplication64_SetName(IDebugApplication64* This,LPCOLESTR pstrName) {
6788     return This->lpVtbl->SetName(This,pstrName);
6789 }
6790 static FORCEINLINE HRESULT IDebugApplication64_StepOutComplete(IDebugApplication64* This) {
6791     return This->lpVtbl->StepOutComplete(This);
6792 }
6793 static FORCEINLINE HRESULT IDebugApplication64_DebugOutput(IDebugApplication64* This,LPCOLESTR pstr) {
6794     return This->lpVtbl->DebugOutput(This,pstr);
6795 }
6796 static FORCEINLINE HRESULT IDebugApplication64_StartDebugSession(IDebugApplication64* This) {
6797     return This->lpVtbl->StartDebugSession(This);
6798 }
6799 static FORCEINLINE HRESULT IDebugApplication64_HandleBreakPoint(IDebugApplication64* This,BREAKREASON br,BREAKRESUMEACTION *pbra) {
6800     return This->lpVtbl->HandleBreakPoint(This,br,pbra);
6801 }
6802 static FORCEINLINE HRESULT IDebugApplication64_Close(IDebugApplication64* This) {
6803     return This->lpVtbl->Close(This);
6804 }
6805 static FORCEINLINE HRESULT IDebugApplication64_GetBreakFlags(IDebugApplication64* This,APPBREAKFLAGS *pabf,IRemoteDebugApplicationThread **pprdatSteppingThread) {
6806     return This->lpVtbl->GetBreakFlags(This,pabf,pprdatSteppingThread);
6807 }
6808 static FORCEINLINE HRESULT IDebugApplication64_GetCurrentThread(IDebugApplication64* This,IDebugApplicationThread **pat) {
6809     return This->lpVtbl->GetCurrentThread(This,pat);
6810 }
6811 static FORCEINLINE HRESULT IDebugApplication64_CreateAsyncDebugOperation(IDebugApplication64* This,IDebugSyncOperation *psdo,IDebugAsyncOperation **ppado) {
6812     return This->lpVtbl->CreateAsyncDebugOperation(This,psdo,ppado);
6813 }
6814 static FORCEINLINE HRESULT IDebugApplication64_AddStackFrameSniffer(IDebugApplication64* This,IDebugStackFrameSniffer *pdsfs,DWORD *pdwCookie) {
6815     return This->lpVtbl->AddStackFrameSniffer(This,pdsfs,pdwCookie);
6816 }
6817 static FORCEINLINE HRESULT IDebugApplication64_RemoveStackFrameSniffer(IDebugApplication64* This,DWORD dwCookie) {
6818     return This->lpVtbl->RemoveStackFrameSniffer(This,dwCookie);
6819 }
6820 static FORCEINLINE HRESULT IDebugApplication64_QueryCurrentThreadIsDebuggerThread(IDebugApplication64* This) {
6821     return This->lpVtbl->QueryCurrentThreadIsDebuggerThread(This);
6822 }
6823 static FORCEINLINE HRESULT IDebugApplication64_SynchronousCallInDebuggerThread(IDebugApplication64* This,IDebugThreadCall64 *pptc,DWORDLONG dwParam1,DWORDLONG dwParam2,DWORDLONG dwParam3) {
6824     return This->lpVtbl->SynchronousCallInDebuggerThread(This,pptc,dwParam1,dwParam2,dwParam3);
6825 }
6826 static FORCEINLINE HRESULT IDebugApplication64_CreateApplicationNode(IDebugApplication64* This,IDebugApplicationNode **ppdanNew) {
6827     return This->lpVtbl->CreateApplicationNode(This,ppdanNew);
6828 }
6829 static FORCEINLINE HRESULT IDebugApplication64_FireDebuggerEvent(IDebugApplication64* This,REFGUID riid,IUnknown *punk) {
6830     return This->lpVtbl->FireDebuggerEvent(This,riid,punk);
6831 }
6832 static FORCEINLINE HRESULT IDebugApplication64_HandleRuntimeError(IDebugApplication64* This,IActiveScriptErrorDebug *pErrorDebug,IActiveScriptSite *pScriptSite,BREAKRESUMEACTION *pbra,ERRORRESUMEACTION *perra,WINBOOL *pfCallOnScriptError) {
6833     return This->lpVtbl->HandleRuntimeError(This,pErrorDebug,pScriptSite,pbra,perra,pfCallOnScriptError);
6834 }
6835 static FORCEINLINE WINBOOL IDebugApplication64_FCanJitDebug(IDebugApplication64* This) {
6836     return This->lpVtbl->FCanJitDebug(This);
6837 }
6838 static FORCEINLINE WINBOOL IDebugApplication64_FIsAutoJitDebugEnabled(IDebugApplication64* This) {
6839     return This->lpVtbl->FIsAutoJitDebugEnabled(This);
6840 }
6841 static FORCEINLINE HRESULT IDebugApplication64_AddGlobalExpressionContextProvider(IDebugApplication64* This,IProvideExpressionContexts *pdsfs,DWORDLONG *pdwCookie) {
6842     return This->lpVtbl->AddGlobalExpressionContextProvider(This,pdsfs,pdwCookie);
6843 }
6844 static FORCEINLINE HRESULT IDebugApplication64_RemoveGlobalExpressionContextProvider(IDebugApplication64* This,DWORDLONG dwCookie) {
6845     return This->lpVtbl->RemoveGlobalExpressionContextProvider(This,dwCookie);
6846 }
6847 #endif
6848 #endif
6849 
6850 #endif
6851 
6852 
6853 #endif  /* __IDebugApplication64_INTERFACE_DEFINED__ */
6854 
6855 /*****************************************************************************
6856  * IRemoteDebugApplicationEvents interface
6857  */
6858 #ifndef __IRemoteDebugApplicationEvents_INTERFACE_DEFINED__
6859 #define __IRemoteDebugApplicationEvents_INTERFACE_DEFINED__
6860 
6861 DEFINE_GUID(IID_IRemoteDebugApplicationEvents, 0x51973c33, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
6862 #if defined(__cplusplus) && !defined(CINTERFACE)
6863 MIDL_INTERFACE("51973c33-cb0c-11d0-b5c9-00a0244a0e7a")
6864 IRemoteDebugApplicationEvents : public IUnknown
6865 {
6866     virtual HRESULT STDMETHODCALLTYPE OnConnectDebugger(
6867         IApplicationDebugger *pad) = 0;
6868 
6869     virtual HRESULT STDMETHODCALLTYPE OnDisconnectDebugger(
6870         ) = 0;
6871 
6872     virtual HRESULT STDMETHODCALLTYPE OnSetName(
6873         LPCOLESTR pstrName) = 0;
6874 
6875     virtual HRESULT STDMETHODCALLTYPE OnDebugOutput(
6876         LPCOLESTR pstr) = 0;
6877 
6878     virtual HRESULT STDMETHODCALLTYPE OnClose(
6879         ) = 0;
6880 
6881     virtual HRESULT STDMETHODCALLTYPE OnEnterBreakPoint(
6882         IRemoteDebugApplicationThread *prdat) = 0;
6883 
6884     virtual HRESULT STDMETHODCALLTYPE OnLeaveBreakPoint(
6885         IRemoteDebugApplicationThread *prdat) = 0;
6886 
6887     virtual HRESULT STDMETHODCALLTYPE OnCreateThread(
6888         IRemoteDebugApplicationThread *prdat) = 0;
6889 
6890     virtual HRESULT STDMETHODCALLTYPE OnDestroyThread(
6891         IRemoteDebugApplicationThread *prdat) = 0;
6892 
6893     virtual HRESULT STDMETHODCALLTYPE OnBreakFlagChange(
6894         APPBREAKFLAGS abf,
6895         IRemoteDebugApplicationThread *prdatSteppingThread) = 0;
6896 
6897 };
6898 #ifdef __CRT_UUID_DECL
6899 __CRT_UUID_DECL(IRemoteDebugApplicationEvents, 0x51973c33, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
6900 #endif
6901 #else
6902 typedef struct IRemoteDebugApplicationEventsVtbl {
6903     BEGIN_INTERFACE
6904 
6905     /*** IUnknown methods ***/
6906     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6907         IRemoteDebugApplicationEvents *This,
6908         REFIID riid,
6909         void **ppvObject);
6910 
6911     ULONG (STDMETHODCALLTYPE *AddRef)(
6912         IRemoteDebugApplicationEvents *This);
6913 
6914     ULONG (STDMETHODCALLTYPE *Release)(
6915         IRemoteDebugApplicationEvents *This);
6916 
6917     /*** IRemoteDebugApplicationEvents methods ***/
6918     HRESULT (STDMETHODCALLTYPE *OnConnectDebugger)(
6919         IRemoteDebugApplicationEvents *This,
6920         IApplicationDebugger *pad);
6921 
6922     HRESULT (STDMETHODCALLTYPE *OnDisconnectDebugger)(
6923         IRemoteDebugApplicationEvents *This);
6924 
6925     HRESULT (STDMETHODCALLTYPE *OnSetName)(
6926         IRemoteDebugApplicationEvents *This,
6927         LPCOLESTR pstrName);
6928 
6929     HRESULT (STDMETHODCALLTYPE *OnDebugOutput)(
6930         IRemoteDebugApplicationEvents *This,
6931         LPCOLESTR pstr);
6932 
6933     HRESULT (STDMETHODCALLTYPE *OnClose)(
6934         IRemoteDebugApplicationEvents *This);
6935 
6936     HRESULT (STDMETHODCALLTYPE *OnEnterBreakPoint)(
6937         IRemoteDebugApplicationEvents *This,
6938         IRemoteDebugApplicationThread *prdat);
6939 
6940     HRESULT (STDMETHODCALLTYPE *OnLeaveBreakPoint)(
6941         IRemoteDebugApplicationEvents *This,
6942         IRemoteDebugApplicationThread *prdat);
6943 
6944     HRESULT (STDMETHODCALLTYPE *OnCreateThread)(
6945         IRemoteDebugApplicationEvents *This,
6946         IRemoteDebugApplicationThread *prdat);
6947 
6948     HRESULT (STDMETHODCALLTYPE *OnDestroyThread)(
6949         IRemoteDebugApplicationEvents *This,
6950         IRemoteDebugApplicationThread *prdat);
6951 
6952     HRESULT (STDMETHODCALLTYPE *OnBreakFlagChange)(
6953         IRemoteDebugApplicationEvents *This,
6954         APPBREAKFLAGS abf,
6955         IRemoteDebugApplicationThread *prdatSteppingThread);
6956 
6957     END_INTERFACE
6958 } IRemoteDebugApplicationEventsVtbl;
6959 
6960 interface IRemoteDebugApplicationEvents {
6961     CONST_VTBL IRemoteDebugApplicationEventsVtbl* lpVtbl;
6962 };
6963 
6964 #ifdef COBJMACROS
6965 #ifndef WIDL_C_INLINE_WRAPPERS
6966 /*** IUnknown methods ***/
6967 #define IRemoteDebugApplicationEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6968 #define IRemoteDebugApplicationEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
6969 #define IRemoteDebugApplicationEvents_Release(This) (This)->lpVtbl->Release(This)
6970 /*** IRemoteDebugApplicationEvents methods ***/
6971 #define IRemoteDebugApplicationEvents_OnConnectDebugger(This,pad) (This)->lpVtbl->OnConnectDebugger(This,pad)
6972 #define IRemoteDebugApplicationEvents_OnDisconnectDebugger(This) (This)->lpVtbl->OnDisconnectDebugger(This)
6973 #define IRemoteDebugApplicationEvents_OnSetName(This,pstrName) (This)->lpVtbl->OnSetName(This,pstrName)
6974 #define IRemoteDebugApplicationEvents_OnDebugOutput(This,pstr) (This)->lpVtbl->OnDebugOutput(This,pstr)
6975 #define IRemoteDebugApplicationEvents_OnClose(This) (This)->lpVtbl->OnClose(This)
6976 #define IRemoteDebugApplicationEvents_OnEnterBreakPoint(This,prdat) (This)->lpVtbl->OnEnterBreakPoint(This,prdat)
6977 #define IRemoteDebugApplicationEvents_OnLeaveBreakPoint(This,prdat) (This)->lpVtbl->OnLeaveBreakPoint(This,prdat)
6978 #define IRemoteDebugApplicationEvents_OnCreateThread(This,prdat) (This)->lpVtbl->OnCreateThread(This,prdat)
6979 #define IRemoteDebugApplicationEvents_OnDestroyThread(This,prdat) (This)->lpVtbl->OnDestroyThread(This,prdat)
6980 #define IRemoteDebugApplicationEvents_OnBreakFlagChange(This,abf,prdatSteppingThread) (This)->lpVtbl->OnBreakFlagChange(This,abf,prdatSteppingThread)
6981 #else
6982 /*** IUnknown methods ***/
6983 static FORCEINLINE HRESULT IRemoteDebugApplicationEvents_QueryInterface(IRemoteDebugApplicationEvents* This,REFIID riid,void **ppvObject) {
6984     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6985 }
6986 static FORCEINLINE ULONG IRemoteDebugApplicationEvents_AddRef(IRemoteDebugApplicationEvents* This) {
6987     return This->lpVtbl->AddRef(This);
6988 }
6989 static FORCEINLINE ULONG IRemoteDebugApplicationEvents_Release(IRemoteDebugApplicationEvents* This) {
6990     return This->lpVtbl->Release(This);
6991 }
6992 /*** IRemoteDebugApplicationEvents methods ***/
6993 static FORCEINLINE HRESULT IRemoteDebugApplicationEvents_OnConnectDebugger(IRemoteDebugApplicationEvents* This,IApplicationDebugger *pad) {
6994     return This->lpVtbl->OnConnectDebugger(This,pad);
6995 }
6996 static FORCEINLINE HRESULT IRemoteDebugApplicationEvents_OnDisconnectDebugger(IRemoteDebugApplicationEvents* This) {
6997     return This->lpVtbl->OnDisconnectDebugger(This);
6998 }
6999 static FORCEINLINE HRESULT IRemoteDebugApplicationEvents_OnSetName(IRemoteDebugApplicationEvents* This,LPCOLESTR pstrName) {
7000     return This->lpVtbl->OnSetName(This,pstrName);
7001 }
7002 static FORCEINLINE HRESULT IRemoteDebugApplicationEvents_OnDebugOutput(IRemoteDebugApplicationEvents* This,LPCOLESTR pstr) {
7003     return This->lpVtbl->OnDebugOutput(This,pstr);
7004 }
7005 static FORCEINLINE HRESULT IRemoteDebugApplicationEvents_OnClose(IRemoteDebugApplicationEvents* This) {
7006     return This->lpVtbl->OnClose(This);
7007 }
7008 static FORCEINLINE HRESULT IRemoteDebugApplicationEvents_OnEnterBreakPoint(IRemoteDebugApplicationEvents* This,IRemoteDebugApplicationThread *prdat) {
7009     return This->lpVtbl->OnEnterBreakPoint(This,prdat);
7010 }
7011 static FORCEINLINE HRESULT IRemoteDebugApplicationEvents_OnLeaveBreakPoint(IRemoteDebugApplicationEvents* This,IRemoteDebugApplicationThread *prdat) {
7012     return This->lpVtbl->OnLeaveBreakPoint(This,prdat);
7013 }
7014 static FORCEINLINE HRESULT IRemoteDebugApplicationEvents_OnCreateThread(IRemoteDebugApplicationEvents* This,IRemoteDebugApplicationThread *prdat) {
7015     return This->lpVtbl->OnCreateThread(This,prdat);
7016 }
7017 static FORCEINLINE HRESULT IRemoteDebugApplicationEvents_OnDestroyThread(IRemoteDebugApplicationEvents* This,IRemoteDebugApplicationThread *prdat) {
7018     return This->lpVtbl->OnDestroyThread(This,prdat);
7019 }
7020 static FORCEINLINE HRESULT IRemoteDebugApplicationEvents_OnBreakFlagChange(IRemoteDebugApplicationEvents* This,APPBREAKFLAGS abf,IRemoteDebugApplicationThread *prdatSteppingThread) {
7021     return This->lpVtbl->OnBreakFlagChange(This,abf,prdatSteppingThread);
7022 }
7023 #endif
7024 #endif
7025 
7026 #endif
7027 
7028 
7029 #endif  /* __IRemoteDebugApplicationEvents_INTERFACE_DEFINED__ */
7030 
7031 /*****************************************************************************
7032  * IDebugApplicationNode interface
7033  */
7034 #ifndef __IDebugApplicationNode_INTERFACE_DEFINED__
7035 #define __IDebugApplicationNode_INTERFACE_DEFINED__
7036 
7037 DEFINE_GUID(IID_IDebugApplicationNode, 0x51973c34, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
7038 #if defined(__cplusplus) && !defined(CINTERFACE)
7039 MIDL_INTERFACE("51973c34-cb0c-11d0-b5c9-00a0244a0e7a")
7040 IDebugApplicationNode : public IDebugDocumentProvider
7041 {
7042     virtual HRESULT STDMETHODCALLTYPE EnumChildren(
7043         IEnumDebugApplicationNodes **pperddp) = 0;
7044 
7045     virtual HRESULT STDMETHODCALLTYPE GetParent(
7046         IDebugApplicationNode **pprddp) = 0;
7047 
7048     virtual HRESULT STDMETHODCALLTYPE SetDocumentProvider(
7049         IDebugDocumentProvider *pddp) = 0;
7050 
7051     virtual HRESULT STDMETHODCALLTYPE Close(
7052         ) = 0;
7053 
7054     virtual HRESULT STDMETHODCALLTYPE Attach(
7055         IDebugApplicationNode *pdanParent) = 0;
7056 
7057     virtual HRESULT STDMETHODCALLTYPE Detach(
7058         ) = 0;
7059 
7060 };
7061 #ifdef __CRT_UUID_DECL
7062 __CRT_UUID_DECL(IDebugApplicationNode, 0x51973c34, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
7063 #endif
7064 #else
7065 typedef struct IDebugApplicationNodeVtbl {
7066     BEGIN_INTERFACE
7067 
7068     /*** IUnknown methods ***/
7069     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7070         IDebugApplicationNode *This,
7071         REFIID riid,
7072         void **ppvObject);
7073 
7074     ULONG (STDMETHODCALLTYPE *AddRef)(
7075         IDebugApplicationNode *This);
7076 
7077     ULONG (STDMETHODCALLTYPE *Release)(
7078         IDebugApplicationNode *This);
7079 
7080     /*** IDebugDocumentInfo methods ***/
7081     HRESULT (STDMETHODCALLTYPE *GetName)(
7082         IDebugApplicationNode *This,
7083         DOCUMENTNAMETYPE dnt,
7084         BSTR *pbstrName);
7085 
7086     HRESULT (STDMETHODCALLTYPE *GetDocumentClassId)(
7087         IDebugApplicationNode *This,
7088         CLSID *pclsidDocument);
7089 
7090     /*** IDebugDocumentProvider methods ***/
7091     HRESULT (STDMETHODCALLTYPE *GetDocument)(
7092         IDebugApplicationNode *This,
7093         IDebugDocument **ppssd);
7094 
7095     /*** IDebugApplicationNode methods ***/
7096     HRESULT (STDMETHODCALLTYPE *EnumChildren)(
7097         IDebugApplicationNode *This,
7098         IEnumDebugApplicationNodes **pperddp);
7099 
7100     HRESULT (STDMETHODCALLTYPE *GetParent)(
7101         IDebugApplicationNode *This,
7102         IDebugApplicationNode **pprddp);
7103 
7104     HRESULT (STDMETHODCALLTYPE *SetDocumentProvider)(
7105         IDebugApplicationNode *This,
7106         IDebugDocumentProvider *pddp);
7107 
7108     HRESULT (STDMETHODCALLTYPE *Close)(
7109         IDebugApplicationNode *This);
7110 
7111     HRESULT (STDMETHODCALLTYPE *Attach)(
7112         IDebugApplicationNode *This,
7113         IDebugApplicationNode *pdanParent);
7114 
7115     HRESULT (STDMETHODCALLTYPE *Detach)(
7116         IDebugApplicationNode *This);
7117 
7118     END_INTERFACE
7119 } IDebugApplicationNodeVtbl;
7120 
7121 interface IDebugApplicationNode {
7122     CONST_VTBL IDebugApplicationNodeVtbl* lpVtbl;
7123 };
7124 
7125 #ifdef COBJMACROS
7126 #ifndef WIDL_C_INLINE_WRAPPERS
7127 /*** IUnknown methods ***/
7128 #define IDebugApplicationNode_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7129 #define IDebugApplicationNode_AddRef(This) (This)->lpVtbl->AddRef(This)
7130 #define IDebugApplicationNode_Release(This) (This)->lpVtbl->Release(This)
7131 /*** IDebugDocumentInfo methods ***/
7132 #define IDebugApplicationNode_GetName(This,dnt,pbstrName) (This)->lpVtbl->GetName(This,dnt,pbstrName)
7133 #define IDebugApplicationNode_GetDocumentClassId(This,pclsidDocument) (This)->lpVtbl->GetDocumentClassId(This,pclsidDocument)
7134 /*** IDebugDocumentProvider methods ***/
7135 #define IDebugApplicationNode_GetDocument(This,ppssd) (This)->lpVtbl->GetDocument(This,ppssd)
7136 /*** IDebugApplicationNode methods ***/
7137 #define IDebugApplicationNode_EnumChildren(This,pperddp) (This)->lpVtbl->EnumChildren(This,pperddp)
7138 #define IDebugApplicationNode_GetParent(This,pprddp) (This)->lpVtbl->GetParent(This,pprddp)
7139 #define IDebugApplicationNode_SetDocumentProvider(This,pddp) (This)->lpVtbl->SetDocumentProvider(This,pddp)
7140 #define IDebugApplicationNode_Close(This) (This)->lpVtbl->Close(This)
7141 #define IDebugApplicationNode_Attach(This,pdanParent) (This)->lpVtbl->Attach(This,pdanParent)
7142 #define IDebugApplicationNode_Detach(This) (This)->lpVtbl->Detach(This)
7143 #else
7144 /*** IUnknown methods ***/
7145 static FORCEINLINE HRESULT IDebugApplicationNode_QueryInterface(IDebugApplicationNode* This,REFIID riid,void **ppvObject) {
7146     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7147 }
7148 static FORCEINLINE ULONG IDebugApplicationNode_AddRef(IDebugApplicationNode* This) {
7149     return This->lpVtbl->AddRef(This);
7150 }
7151 static FORCEINLINE ULONG IDebugApplicationNode_Release(IDebugApplicationNode* This) {
7152     return This->lpVtbl->Release(This);
7153 }
7154 /*** IDebugDocumentInfo methods ***/
7155 static FORCEINLINE HRESULT IDebugApplicationNode_GetName(IDebugApplicationNode* This,DOCUMENTNAMETYPE dnt,BSTR *pbstrName) {
7156     return This->lpVtbl->GetName(This,dnt,pbstrName);
7157 }
7158 static FORCEINLINE HRESULT IDebugApplicationNode_GetDocumentClassId(IDebugApplicationNode* This,CLSID *pclsidDocument) {
7159     return This->lpVtbl->GetDocumentClassId(This,pclsidDocument);
7160 }
7161 /*** IDebugDocumentProvider methods ***/
7162 static FORCEINLINE HRESULT IDebugApplicationNode_GetDocument(IDebugApplicationNode* This,IDebugDocument **ppssd) {
7163     return This->lpVtbl->GetDocument(This,ppssd);
7164 }
7165 /*** IDebugApplicationNode methods ***/
7166 static FORCEINLINE HRESULT IDebugApplicationNode_EnumChildren(IDebugApplicationNode* This,IEnumDebugApplicationNodes **pperddp) {
7167     return This->lpVtbl->EnumChildren(This,pperddp);
7168 }
7169 static FORCEINLINE HRESULT IDebugApplicationNode_GetParent(IDebugApplicationNode* This,IDebugApplicationNode **pprddp) {
7170     return This->lpVtbl->GetParent(This,pprddp);
7171 }
7172 static FORCEINLINE HRESULT IDebugApplicationNode_SetDocumentProvider(IDebugApplicationNode* This,IDebugDocumentProvider *pddp) {
7173     return This->lpVtbl->SetDocumentProvider(This,pddp);
7174 }
7175 static FORCEINLINE HRESULT IDebugApplicationNode_Close(IDebugApplicationNode* This) {
7176     return This->lpVtbl->Close(This);
7177 }
7178 static FORCEINLINE HRESULT IDebugApplicationNode_Attach(IDebugApplicationNode* This,IDebugApplicationNode *pdanParent) {
7179     return This->lpVtbl->Attach(This,pdanParent);
7180 }
7181 static FORCEINLINE HRESULT IDebugApplicationNode_Detach(IDebugApplicationNode* This) {
7182     return This->lpVtbl->Detach(This);
7183 }
7184 #endif
7185 #endif
7186 
7187 #endif
7188 
7189 
7190 #endif  /* __IDebugApplicationNode_INTERFACE_DEFINED__ */
7191 
7192 /*****************************************************************************
7193  * IDebugApplicationNodeEvents interface
7194  */
7195 #ifndef __IDebugApplicationNodeEvents_INTERFACE_DEFINED__
7196 #define __IDebugApplicationNodeEvents_INTERFACE_DEFINED__
7197 
7198 DEFINE_GUID(IID_IDebugApplicationNodeEvents, 0x51973c35, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
7199 #if defined(__cplusplus) && !defined(CINTERFACE)
7200 MIDL_INTERFACE("51973c35-cb0c-11d0-b5c9-00a0244a0e7a")
7201 IDebugApplicationNodeEvents : public IUnknown
7202 {
7203     virtual HRESULT STDMETHODCALLTYPE onAddChild(
7204         IDebugApplicationNode *prddpChild) = 0;
7205 
7206     virtual HRESULT STDMETHODCALLTYPE onRemoveChild(
7207         IDebugApplicationNode *prddpChild) = 0;
7208 
7209     virtual HRESULT STDMETHODCALLTYPE onDetach(
7210         ) = 0;
7211 
7212     virtual HRESULT STDMETHODCALLTYPE onAttach(
7213         IDebugApplicationNode *prddpParent) = 0;
7214 
7215 };
7216 #ifdef __CRT_UUID_DECL
7217 __CRT_UUID_DECL(IDebugApplicationNodeEvents, 0x51973c35, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
7218 #endif
7219 #else
7220 typedef struct IDebugApplicationNodeEventsVtbl {
7221     BEGIN_INTERFACE
7222 
7223     /*** IUnknown methods ***/
7224     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7225         IDebugApplicationNodeEvents *This,
7226         REFIID riid,
7227         void **ppvObject);
7228 
7229     ULONG (STDMETHODCALLTYPE *AddRef)(
7230         IDebugApplicationNodeEvents *This);
7231 
7232     ULONG (STDMETHODCALLTYPE *Release)(
7233         IDebugApplicationNodeEvents *This);
7234 
7235     /*** IDebugApplicationNodeEvents methods ***/
7236     HRESULT (STDMETHODCALLTYPE *onAddChild)(
7237         IDebugApplicationNodeEvents *This,
7238         IDebugApplicationNode *prddpChild);
7239 
7240     HRESULT (STDMETHODCALLTYPE *onRemoveChild)(
7241         IDebugApplicationNodeEvents *This,
7242         IDebugApplicationNode *prddpChild);
7243 
7244     HRESULT (STDMETHODCALLTYPE *onDetach)(
7245         IDebugApplicationNodeEvents *This);
7246 
7247     HRESULT (STDMETHODCALLTYPE *onAttach)(
7248         IDebugApplicationNodeEvents *This,
7249         IDebugApplicationNode *prddpParent);
7250 
7251     END_INTERFACE
7252 } IDebugApplicationNodeEventsVtbl;
7253 
7254 interface IDebugApplicationNodeEvents {
7255     CONST_VTBL IDebugApplicationNodeEventsVtbl* lpVtbl;
7256 };
7257 
7258 #ifdef COBJMACROS
7259 #ifndef WIDL_C_INLINE_WRAPPERS
7260 /*** IUnknown methods ***/
7261 #define IDebugApplicationNodeEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7262 #define IDebugApplicationNodeEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
7263 #define IDebugApplicationNodeEvents_Release(This) (This)->lpVtbl->Release(This)
7264 /*** IDebugApplicationNodeEvents methods ***/
7265 #define IDebugApplicationNodeEvents_onAddChild(This,prddpChild) (This)->lpVtbl->onAddChild(This,prddpChild)
7266 #define IDebugApplicationNodeEvents_onRemoveChild(This,prddpChild) (This)->lpVtbl->onRemoveChild(This,prddpChild)
7267 #define IDebugApplicationNodeEvents_onDetach(This) (This)->lpVtbl->onDetach(This)
7268 #define IDebugApplicationNodeEvents_onAttach(This,prddpParent) (This)->lpVtbl->onAttach(This,prddpParent)
7269 #else
7270 /*** IUnknown methods ***/
7271 static FORCEINLINE HRESULT IDebugApplicationNodeEvents_QueryInterface(IDebugApplicationNodeEvents* This,REFIID riid,void **ppvObject) {
7272     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7273 }
7274 static FORCEINLINE ULONG IDebugApplicationNodeEvents_AddRef(IDebugApplicationNodeEvents* This) {
7275     return This->lpVtbl->AddRef(This);
7276 }
7277 static FORCEINLINE ULONG IDebugApplicationNodeEvents_Release(IDebugApplicationNodeEvents* This) {
7278     return This->lpVtbl->Release(This);
7279 }
7280 /*** IDebugApplicationNodeEvents methods ***/
7281 static FORCEINLINE HRESULT IDebugApplicationNodeEvents_onAddChild(IDebugApplicationNodeEvents* This,IDebugApplicationNode *prddpChild) {
7282     return This->lpVtbl->onAddChild(This,prddpChild);
7283 }
7284 static FORCEINLINE HRESULT IDebugApplicationNodeEvents_onRemoveChild(IDebugApplicationNodeEvents* This,IDebugApplicationNode *prddpChild) {
7285     return This->lpVtbl->onRemoveChild(This,prddpChild);
7286 }
7287 static FORCEINLINE HRESULT IDebugApplicationNodeEvents_onDetach(IDebugApplicationNodeEvents* This) {
7288     return This->lpVtbl->onDetach(This);
7289 }
7290 static FORCEINLINE HRESULT IDebugApplicationNodeEvents_onAttach(IDebugApplicationNodeEvents* This,IDebugApplicationNode *prddpParent) {
7291     return This->lpVtbl->onAttach(This,prddpParent);
7292 }
7293 #endif
7294 #endif
7295 
7296 #endif
7297 
7298 
7299 #endif  /* __IDebugApplicationNodeEvents_INTERFACE_DEFINED__ */
7300 
7301 /*****************************************************************************
7302  * AsyncIDebugApplicationNodeEvents interface
7303  */
7304 #ifndef __AsyncIDebugApplicationNodeEvents_INTERFACE_DEFINED__
7305 #define __AsyncIDebugApplicationNodeEvents_INTERFACE_DEFINED__
7306 
7307 DEFINE_GUID(IID_AsyncIDebugApplicationNodeEvents, 0xa2e3aa3b, 0xaa8d, 0x4ebf, 0x84,0xcd, 0x64,0x8b,0x73,0x7b,0x8c,0x13);
7308 #if defined(__cplusplus) && !defined(CINTERFACE)
7309 MIDL_INTERFACE("a2e3aa3b-aa8d-4ebf-84cd-648b737b8c13")
7310 AsyncIDebugApplicationNodeEvents : public IUnknown
7311 {
7312     virtual HRESULT STDMETHODCALLTYPE Begin_onAddChild(
7313         IDebugApplicationNode *prddpChild) = 0;
7314 
7315     virtual HRESULT STDMETHODCALLTYPE Finish_onAddChild(
7316         ) = 0;
7317 
7318     virtual HRESULT STDMETHODCALLTYPE Begin_onRemoveChild(
7319         IDebugApplicationNode *prddpChild) = 0;
7320 
7321     virtual HRESULT STDMETHODCALLTYPE Finish_onRemoveChild(
7322         ) = 0;
7323 
7324     virtual HRESULT STDMETHODCALLTYPE Begin_onDetach(
7325         ) = 0;
7326 
7327     virtual HRESULT STDMETHODCALLTYPE Finish_onDetach(
7328         ) = 0;
7329 
7330     virtual HRESULT STDMETHODCALLTYPE Begin_onAttach(
7331         IDebugApplicationNode *prddpParent) = 0;
7332 
7333     virtual HRESULT STDMETHODCALLTYPE Finish_onAttach(
7334         ) = 0;
7335 
7336 };
7337 #ifdef __CRT_UUID_DECL
7338 __CRT_UUID_DECL(AsyncIDebugApplicationNodeEvents, 0xa2e3aa3b, 0xaa8d, 0x4ebf, 0x84,0xcd, 0x64,0x8b,0x73,0x7b,0x8c,0x13)
7339 #endif
7340 #else
7341 typedef struct AsyncIDebugApplicationNodeEventsVtbl {
7342     BEGIN_INTERFACE
7343 
7344     /*** IUnknown methods ***/
7345     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7346         AsyncIDebugApplicationNodeEvents *This,
7347         REFIID riid,
7348         void **ppvObject);
7349 
7350     ULONG (STDMETHODCALLTYPE *AddRef)(
7351         AsyncIDebugApplicationNodeEvents *This);
7352 
7353     ULONG (STDMETHODCALLTYPE *Release)(
7354         AsyncIDebugApplicationNodeEvents *This);
7355 
7356     /*** AsyncIDebugApplicationNodeEvents methods ***/
7357     HRESULT (STDMETHODCALLTYPE *Begin_onAddChild)(
7358         AsyncIDebugApplicationNodeEvents *This,
7359         IDebugApplicationNode *prddpChild);
7360 
7361     HRESULT (STDMETHODCALLTYPE *Finish_onAddChild)(
7362         AsyncIDebugApplicationNodeEvents *This);
7363 
7364     HRESULT (STDMETHODCALLTYPE *Begin_onRemoveChild)(
7365         AsyncIDebugApplicationNodeEvents *This,
7366         IDebugApplicationNode *prddpChild);
7367 
7368     HRESULT (STDMETHODCALLTYPE *Finish_onRemoveChild)(
7369         AsyncIDebugApplicationNodeEvents *This);
7370 
7371     HRESULT (STDMETHODCALLTYPE *Begin_onDetach)(
7372         AsyncIDebugApplicationNodeEvents *This);
7373 
7374     HRESULT (STDMETHODCALLTYPE *Finish_onDetach)(
7375         AsyncIDebugApplicationNodeEvents *This);
7376 
7377     HRESULT (STDMETHODCALLTYPE *Begin_onAttach)(
7378         AsyncIDebugApplicationNodeEvents *This,
7379         IDebugApplicationNode *prddpParent);
7380 
7381     HRESULT (STDMETHODCALLTYPE *Finish_onAttach)(
7382         AsyncIDebugApplicationNodeEvents *This);
7383 
7384     END_INTERFACE
7385 } AsyncIDebugApplicationNodeEventsVtbl;
7386 
7387 interface AsyncIDebugApplicationNodeEvents {
7388     CONST_VTBL AsyncIDebugApplicationNodeEventsVtbl* lpVtbl;
7389 };
7390 
7391 #ifdef COBJMACROS
7392 #ifndef WIDL_C_INLINE_WRAPPERS
7393 /*** IUnknown methods ***/
7394 #define AsyncIDebugApplicationNodeEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7395 #define AsyncIDebugApplicationNodeEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
7396 #define AsyncIDebugApplicationNodeEvents_Release(This) (This)->lpVtbl->Release(This)
7397 /*** AsyncIDebugApplicationNodeEvents methods ***/
7398 #define AsyncIDebugApplicationNodeEvents_Begin_onAddChild(This,prddpChild) (This)->lpVtbl->Begin_onAddChild(This,prddpChild)
7399 #define AsyncIDebugApplicationNodeEvents_Finish_onAddChild(This) (This)->lpVtbl->Finish_onAddChild(This)
7400 #define AsyncIDebugApplicationNodeEvents_Begin_onRemoveChild(This,prddpChild) (This)->lpVtbl->Begin_onRemoveChild(This,prddpChild)
7401 #define AsyncIDebugApplicationNodeEvents_Finish_onRemoveChild(This) (This)->lpVtbl->Finish_onRemoveChild(This)
7402 #define AsyncIDebugApplicationNodeEvents_Begin_onDetach(This) (This)->lpVtbl->Begin_onDetach(This)
7403 #define AsyncIDebugApplicationNodeEvents_Finish_onDetach(This) (This)->lpVtbl->Finish_onDetach(This)
7404 #define AsyncIDebugApplicationNodeEvents_Begin_onAttach(This,prddpParent) (This)->lpVtbl->Begin_onAttach(This,prddpParent)
7405 #define AsyncIDebugApplicationNodeEvents_Finish_onAttach(This) (This)->lpVtbl->Finish_onAttach(This)
7406 #else
7407 /*** IUnknown methods ***/
7408 static FORCEINLINE HRESULT AsyncIDebugApplicationNodeEvents_QueryInterface(AsyncIDebugApplicationNodeEvents* This,REFIID riid,void **ppvObject) {
7409     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7410 }
7411 static FORCEINLINE ULONG AsyncIDebugApplicationNodeEvents_AddRef(AsyncIDebugApplicationNodeEvents* This) {
7412     return This->lpVtbl->AddRef(This);
7413 }
7414 static FORCEINLINE ULONG AsyncIDebugApplicationNodeEvents_Release(AsyncIDebugApplicationNodeEvents* This) {
7415     return This->lpVtbl->Release(This);
7416 }
7417 /*** AsyncIDebugApplicationNodeEvents methods ***/
7418 static FORCEINLINE HRESULT AsyncIDebugApplicationNodeEvents_Begin_onAddChild(AsyncIDebugApplicationNodeEvents* This,IDebugApplicationNode *prddpChild) {
7419     return This->lpVtbl->Begin_onAddChild(This,prddpChild);
7420 }
7421 static FORCEINLINE HRESULT AsyncIDebugApplicationNodeEvents_Finish_onAddChild(AsyncIDebugApplicationNodeEvents* This) {
7422     return This->lpVtbl->Finish_onAddChild(This);
7423 }
7424 static FORCEINLINE HRESULT AsyncIDebugApplicationNodeEvents_Begin_onRemoveChild(AsyncIDebugApplicationNodeEvents* This,IDebugApplicationNode *prddpChild) {
7425     return This->lpVtbl->Begin_onRemoveChild(This,prddpChild);
7426 }
7427 static FORCEINLINE HRESULT AsyncIDebugApplicationNodeEvents_Finish_onRemoveChild(AsyncIDebugApplicationNodeEvents* This) {
7428     return This->lpVtbl->Finish_onRemoveChild(This);
7429 }
7430 static FORCEINLINE HRESULT AsyncIDebugApplicationNodeEvents_Begin_onDetach(AsyncIDebugApplicationNodeEvents* This) {
7431     return This->lpVtbl->Begin_onDetach(This);
7432 }
7433 static FORCEINLINE HRESULT AsyncIDebugApplicationNodeEvents_Finish_onDetach(AsyncIDebugApplicationNodeEvents* This) {
7434     return This->lpVtbl->Finish_onDetach(This);
7435 }
7436 static FORCEINLINE HRESULT AsyncIDebugApplicationNodeEvents_Begin_onAttach(AsyncIDebugApplicationNodeEvents* This,IDebugApplicationNode *prddpParent) {
7437     return This->lpVtbl->Begin_onAttach(This,prddpParent);
7438 }
7439 static FORCEINLINE HRESULT AsyncIDebugApplicationNodeEvents_Finish_onAttach(AsyncIDebugApplicationNodeEvents* This) {
7440     return This->lpVtbl->Finish_onAttach(This);
7441 }
7442 #endif
7443 #endif
7444 
7445 #endif
7446 
7447 
7448 #endif  /* __AsyncIDebugApplicationNodeEvents_INTERFACE_DEFINED__ */
7449 
7450 /*****************************************************************************
7451  * IDebugThreadCall32 interface
7452  */
7453 #ifndef __IDebugThreadCall32_INTERFACE_DEFINED__
7454 #define __IDebugThreadCall32_INTERFACE_DEFINED__
7455 
7456 DEFINE_GUID(IID_IDebugThreadCall32, 0x51973c36, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
7457 #if defined(__cplusplus) && !defined(CINTERFACE)
7458 MIDL_INTERFACE("51973c36-cb0c-11d0-b5c9-00a0244a0e7a")
7459 IDebugThreadCall32 : public IUnknown
7460 {
7461     virtual HRESULT STDMETHODCALLTYPE ThreadCallHandler(
7462         DWORD dwParam1,
7463         DWORD dwParam2,
7464         DWORD dwParam3) = 0;
7465 
7466 };
7467 #ifdef __CRT_UUID_DECL
7468 __CRT_UUID_DECL(IDebugThreadCall32, 0x51973c36, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
7469 #endif
7470 #else
7471 typedef struct IDebugThreadCall32Vtbl {
7472     BEGIN_INTERFACE
7473 
7474     /*** IUnknown methods ***/
7475     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7476         IDebugThreadCall32 *This,
7477         REFIID riid,
7478         void **ppvObject);
7479 
7480     ULONG (STDMETHODCALLTYPE *AddRef)(
7481         IDebugThreadCall32 *This);
7482 
7483     ULONG (STDMETHODCALLTYPE *Release)(
7484         IDebugThreadCall32 *This);
7485 
7486     /*** IDebugThreadCall32 methods ***/
7487     HRESULT (STDMETHODCALLTYPE *ThreadCallHandler)(
7488         IDebugThreadCall32 *This,
7489         DWORD dwParam1,
7490         DWORD dwParam2,
7491         DWORD dwParam3);
7492 
7493     END_INTERFACE
7494 } IDebugThreadCall32Vtbl;
7495 
7496 interface IDebugThreadCall32 {
7497     CONST_VTBL IDebugThreadCall32Vtbl* lpVtbl;
7498 };
7499 
7500 #ifdef COBJMACROS
7501 #ifndef WIDL_C_INLINE_WRAPPERS
7502 /*** IUnknown methods ***/
7503 #define IDebugThreadCall32_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7504 #define IDebugThreadCall32_AddRef(This) (This)->lpVtbl->AddRef(This)
7505 #define IDebugThreadCall32_Release(This) (This)->lpVtbl->Release(This)
7506 /*** IDebugThreadCall32 methods ***/
7507 #define IDebugThreadCall32_ThreadCallHandler(This,dwParam1,dwParam2,dwParam3) (This)->lpVtbl->ThreadCallHandler(This,dwParam1,dwParam2,dwParam3)
7508 #else
7509 /*** IUnknown methods ***/
7510 static FORCEINLINE HRESULT IDebugThreadCall32_QueryInterface(IDebugThreadCall32* This,REFIID riid,void **ppvObject) {
7511     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7512 }
7513 static FORCEINLINE ULONG IDebugThreadCall32_AddRef(IDebugThreadCall32* This) {
7514     return This->lpVtbl->AddRef(This);
7515 }
7516 static FORCEINLINE ULONG IDebugThreadCall32_Release(IDebugThreadCall32* This) {
7517     return This->lpVtbl->Release(This);
7518 }
7519 /*** IDebugThreadCall32 methods ***/
7520 static FORCEINLINE HRESULT IDebugThreadCall32_ThreadCallHandler(IDebugThreadCall32* This,DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) {
7521     return This->lpVtbl->ThreadCallHandler(This,dwParam1,dwParam2,dwParam3);
7522 }
7523 #endif
7524 #endif
7525 
7526 #endif
7527 
7528 
7529 #endif  /* __IDebugThreadCall32_INTERFACE_DEFINED__ */
7530 
7531 /*****************************************************************************
7532  * IDebugThreadCall64 interface
7533  */
7534 #ifndef __IDebugThreadCall64_INTERFACE_DEFINED__
7535 #define __IDebugThreadCall64_INTERFACE_DEFINED__
7536 
7537 DEFINE_GUID(IID_IDebugThreadCall64, 0xcb3fa335, 0xe979, 0x42fd, 0x9f,0xcf, 0xa7,0x54,0x6a,0x0f,0x39,0x05);
7538 #if defined(__cplusplus) && !defined(CINTERFACE)
7539 MIDL_INTERFACE("cb3fa335-e979-42fd-9fcf-a7546a0f3905")
7540 IDebugThreadCall64 : public IUnknown
7541 {
7542     virtual HRESULT STDMETHODCALLTYPE ThreadCallHandler(
7543         DWORDLONG dwParam1,
7544         DWORDLONG dwParam2,
7545         DWORDLONG dwParam3) = 0;
7546 
7547 };
7548 #ifdef __CRT_UUID_DECL
7549 __CRT_UUID_DECL(IDebugThreadCall64, 0xcb3fa335, 0xe979, 0x42fd, 0x9f,0xcf, 0xa7,0x54,0x6a,0x0f,0x39,0x05)
7550 #endif
7551 #else
7552 typedef struct IDebugThreadCall64Vtbl {
7553     BEGIN_INTERFACE
7554 
7555     /*** IUnknown methods ***/
7556     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7557         IDebugThreadCall64 *This,
7558         REFIID riid,
7559         void **ppvObject);
7560 
7561     ULONG (STDMETHODCALLTYPE *AddRef)(
7562         IDebugThreadCall64 *This);
7563 
7564     ULONG (STDMETHODCALLTYPE *Release)(
7565         IDebugThreadCall64 *This);
7566 
7567     /*** IDebugThreadCall64 methods ***/
7568     HRESULT (STDMETHODCALLTYPE *ThreadCallHandler)(
7569         IDebugThreadCall64 *This,
7570         DWORDLONG dwParam1,
7571         DWORDLONG dwParam2,
7572         DWORDLONG dwParam3);
7573 
7574     END_INTERFACE
7575 } IDebugThreadCall64Vtbl;
7576 
7577 interface IDebugThreadCall64 {
7578     CONST_VTBL IDebugThreadCall64Vtbl* lpVtbl;
7579 };
7580 
7581 #ifdef COBJMACROS
7582 #ifndef WIDL_C_INLINE_WRAPPERS
7583 /*** IUnknown methods ***/
7584 #define IDebugThreadCall64_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7585 #define IDebugThreadCall64_AddRef(This) (This)->lpVtbl->AddRef(This)
7586 #define IDebugThreadCall64_Release(This) (This)->lpVtbl->Release(This)
7587 /*** IDebugThreadCall64 methods ***/
7588 #define IDebugThreadCall64_ThreadCallHandler(This,dwParam1,dwParam2,dwParam3) (This)->lpVtbl->ThreadCallHandler(This,dwParam1,dwParam2,dwParam3)
7589 #else
7590 /*** IUnknown methods ***/
7591 static FORCEINLINE HRESULT IDebugThreadCall64_QueryInterface(IDebugThreadCall64* This,REFIID riid,void **ppvObject) {
7592     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7593 }
7594 static FORCEINLINE ULONG IDebugThreadCall64_AddRef(IDebugThreadCall64* This) {
7595     return This->lpVtbl->AddRef(This);
7596 }
7597 static FORCEINLINE ULONG IDebugThreadCall64_Release(IDebugThreadCall64* This) {
7598     return This->lpVtbl->Release(This);
7599 }
7600 /*** IDebugThreadCall64 methods ***/
7601 static FORCEINLINE HRESULT IDebugThreadCall64_ThreadCallHandler(IDebugThreadCall64* This,DWORDLONG dwParam1,DWORDLONG dwParam2,DWORDLONG dwParam3) {
7602     return This->lpVtbl->ThreadCallHandler(This,dwParam1,dwParam2,dwParam3);
7603 }
7604 #endif
7605 #endif
7606 
7607 #endif
7608 
7609 
7610 #endif  /* __IDebugThreadCall64_INTERFACE_DEFINED__ */
7611 
7612 /*****************************************************************************
7613  * IRemoteDebugApplicationThread interface
7614  */
7615 #ifndef __IRemoteDebugApplicationThread_INTERFACE_DEFINED__
7616 #define __IRemoteDebugApplicationThread_INTERFACE_DEFINED__
7617 
7618 typedef DWORD THREAD_STATE;
7619 #define THREAD_STATE_RUNNING (0x1)
7620 
7621 #define THREAD_STATE_SUSPENDED (0x2)
7622 
7623 #define THREAD_BLOCKED (0x4)
7624 
7625 #define THREAD_OUT_OF_CONTEXT (0x8)
7626 
7627 DEFINE_GUID(IID_IRemoteDebugApplicationThread, 0x51973c37, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
7628 #if defined(__cplusplus) && !defined(CINTERFACE)
7629 MIDL_INTERFACE("51973c37-cb0c-11d0-b5c9-00a0244a0e7a")
7630 IRemoteDebugApplicationThread : public IUnknown
7631 {
7632     virtual HRESULT STDMETHODCALLTYPE GetSystemThreadId(
7633         DWORD *dwThreadId) = 0;
7634 
7635     virtual HRESULT STDMETHODCALLTYPE GetApplication(
7636         IRemoteDebugApplication **pprda) = 0;
7637 
7638     virtual HRESULT STDMETHODCALLTYPE EnumStackFrames(
7639         IEnumDebugStackFrames **ppedsf) = 0;
7640 
7641     virtual HRESULT STDMETHODCALLTYPE GetDescription(
7642         BSTR *pbstrDescription,
7643         BSTR *pbstrState) = 0;
7644 
7645     virtual HRESULT STDMETHODCALLTYPE SetNextStatement(
7646         IDebugStackFrame *pStackFrame,
7647         IDebugCodeContext *pCodeContext) = 0;
7648 
7649     virtual HRESULT STDMETHODCALLTYPE GetState(
7650         DWORD *pState) = 0;
7651 
7652     virtual HRESULT STDMETHODCALLTYPE Suspend(
7653         DWORD *pdwCount) = 0;
7654 
7655     virtual HRESULT STDMETHODCALLTYPE Resume(
7656         DWORD *pdwCount) = 0;
7657 
7658     virtual HRESULT STDMETHODCALLTYPE GetSuspendCount(
7659         DWORD *pdwCount) = 0;
7660 
7661 };
7662 #ifdef __CRT_UUID_DECL
7663 __CRT_UUID_DECL(IRemoteDebugApplicationThread, 0x51973c37, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
7664 #endif
7665 #else
7666 typedef struct IRemoteDebugApplicationThreadVtbl {
7667     BEGIN_INTERFACE
7668 
7669     /*** IUnknown methods ***/
7670     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7671         IRemoteDebugApplicationThread *This,
7672         REFIID riid,
7673         void **ppvObject);
7674 
7675     ULONG (STDMETHODCALLTYPE *AddRef)(
7676         IRemoteDebugApplicationThread *This);
7677 
7678     ULONG (STDMETHODCALLTYPE *Release)(
7679         IRemoteDebugApplicationThread *This);
7680 
7681     /*** IRemoteDebugApplicationThread methods ***/
7682     HRESULT (STDMETHODCALLTYPE *GetSystemThreadId)(
7683         IRemoteDebugApplicationThread *This,
7684         DWORD *dwThreadId);
7685 
7686     HRESULT (STDMETHODCALLTYPE *GetApplication)(
7687         IRemoteDebugApplicationThread *This,
7688         IRemoteDebugApplication **pprda);
7689 
7690     HRESULT (STDMETHODCALLTYPE *EnumStackFrames)(
7691         IRemoteDebugApplicationThread *This,
7692         IEnumDebugStackFrames **ppedsf);
7693 
7694     HRESULT (STDMETHODCALLTYPE *GetDescription)(
7695         IRemoteDebugApplicationThread *This,
7696         BSTR *pbstrDescription,
7697         BSTR *pbstrState);
7698 
7699     HRESULT (STDMETHODCALLTYPE *SetNextStatement)(
7700         IRemoteDebugApplicationThread *This,
7701         IDebugStackFrame *pStackFrame,
7702         IDebugCodeContext *pCodeContext);
7703 
7704     HRESULT (STDMETHODCALLTYPE *GetState)(
7705         IRemoteDebugApplicationThread *This,
7706         DWORD *pState);
7707 
7708     HRESULT (STDMETHODCALLTYPE *Suspend)(
7709         IRemoteDebugApplicationThread *This,
7710         DWORD *pdwCount);
7711 
7712     HRESULT (STDMETHODCALLTYPE *Resume)(
7713         IRemoteDebugApplicationThread *This,
7714         DWORD *pdwCount);
7715 
7716     HRESULT (STDMETHODCALLTYPE *GetSuspendCount)(
7717         IRemoteDebugApplicationThread *This,
7718         DWORD *pdwCount);
7719 
7720     END_INTERFACE
7721 } IRemoteDebugApplicationThreadVtbl;
7722 
7723 interface IRemoteDebugApplicationThread {
7724     CONST_VTBL IRemoteDebugApplicationThreadVtbl* lpVtbl;
7725 };
7726 
7727 #ifdef COBJMACROS
7728 #ifndef WIDL_C_INLINE_WRAPPERS
7729 /*** IUnknown methods ***/
7730 #define IRemoteDebugApplicationThread_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7731 #define IRemoteDebugApplicationThread_AddRef(This) (This)->lpVtbl->AddRef(This)
7732 #define IRemoteDebugApplicationThread_Release(This) (This)->lpVtbl->Release(This)
7733 /*** IRemoteDebugApplicationThread methods ***/
7734 #define IRemoteDebugApplicationThread_GetSystemThreadId(This,dwThreadId) (This)->lpVtbl->GetSystemThreadId(This,dwThreadId)
7735 #define IRemoteDebugApplicationThread_GetApplication(This,pprda) (This)->lpVtbl->GetApplication(This,pprda)
7736 #define IRemoteDebugApplicationThread_EnumStackFrames(This,ppedsf) (This)->lpVtbl->EnumStackFrames(This,ppedsf)
7737 #define IRemoteDebugApplicationThread_GetDescription(This,pbstrDescription,pbstrState) (This)->lpVtbl->GetDescription(This,pbstrDescription,pbstrState)
7738 #define IRemoteDebugApplicationThread_SetNextStatement(This,pStackFrame,pCodeContext) (This)->lpVtbl->SetNextStatement(This,pStackFrame,pCodeContext)
7739 #define IRemoteDebugApplicationThread_GetState(This,pState) (This)->lpVtbl->GetState(This,pState)
7740 #define IRemoteDebugApplicationThread_Suspend(This,pdwCount) (This)->lpVtbl->Suspend(This,pdwCount)
7741 #define IRemoteDebugApplicationThread_Resume(This,pdwCount) (This)->lpVtbl->Resume(This,pdwCount)
7742 #define IRemoteDebugApplicationThread_GetSuspendCount(This,pdwCount) (This)->lpVtbl->GetSuspendCount(This,pdwCount)
7743 #else
7744 /*** IUnknown methods ***/
7745 static FORCEINLINE HRESULT IRemoteDebugApplicationThread_QueryInterface(IRemoteDebugApplicationThread* This,REFIID riid,void **ppvObject) {
7746     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7747 }
7748 static FORCEINLINE ULONG IRemoteDebugApplicationThread_AddRef(IRemoteDebugApplicationThread* This) {
7749     return This->lpVtbl->AddRef(This);
7750 }
7751 static FORCEINLINE ULONG IRemoteDebugApplicationThread_Release(IRemoteDebugApplicationThread* This) {
7752     return This->lpVtbl->Release(This);
7753 }
7754 /*** IRemoteDebugApplicationThread methods ***/
7755 static FORCEINLINE HRESULT IRemoteDebugApplicationThread_GetSystemThreadId(IRemoteDebugApplicationThread* This,DWORD *dwThreadId) {
7756     return This->lpVtbl->GetSystemThreadId(This,dwThreadId);
7757 }
7758 static FORCEINLINE HRESULT IRemoteDebugApplicationThread_GetApplication(IRemoteDebugApplicationThread* This,IRemoteDebugApplication **pprda) {
7759     return This->lpVtbl->GetApplication(This,pprda);
7760 }
7761 static FORCEINLINE HRESULT IRemoteDebugApplicationThread_EnumStackFrames(IRemoteDebugApplicationThread* This,IEnumDebugStackFrames **ppedsf) {
7762     return This->lpVtbl->EnumStackFrames(This,ppedsf);
7763 }
7764 static FORCEINLINE HRESULT IRemoteDebugApplicationThread_GetDescription(IRemoteDebugApplicationThread* This,BSTR *pbstrDescription,BSTR *pbstrState) {
7765     return This->lpVtbl->GetDescription(This,pbstrDescription,pbstrState);
7766 }
7767 static FORCEINLINE HRESULT IRemoteDebugApplicationThread_SetNextStatement(IRemoteDebugApplicationThread* This,IDebugStackFrame *pStackFrame,IDebugCodeContext *pCodeContext) {
7768     return This->lpVtbl->SetNextStatement(This,pStackFrame,pCodeContext);
7769 }
7770 static FORCEINLINE HRESULT IRemoteDebugApplicationThread_GetState(IRemoteDebugApplicationThread* This,DWORD *pState) {
7771     return This->lpVtbl->GetState(This,pState);
7772 }
7773 static FORCEINLINE HRESULT IRemoteDebugApplicationThread_Suspend(IRemoteDebugApplicationThread* This,DWORD *pdwCount) {
7774     return This->lpVtbl->Suspend(This,pdwCount);
7775 }
7776 static FORCEINLINE HRESULT IRemoteDebugApplicationThread_Resume(IRemoteDebugApplicationThread* This,DWORD *pdwCount) {
7777     return This->lpVtbl->Resume(This,pdwCount);
7778 }
7779 static FORCEINLINE HRESULT IRemoteDebugApplicationThread_GetSuspendCount(IRemoteDebugApplicationThread* This,DWORD *pdwCount) {
7780     return This->lpVtbl->GetSuspendCount(This,pdwCount);
7781 }
7782 #endif
7783 #endif
7784 
7785 #endif
7786 
7787 
7788 #endif  /* __IRemoteDebugApplicationThread_INTERFACE_DEFINED__ */
7789 
7790 /*****************************************************************************
7791  * IDebugApplicationThread interface
7792  */
7793 #ifndef __IDebugApplicationThread_INTERFACE_DEFINED__
7794 #define __IDebugApplicationThread_INTERFACE_DEFINED__
7795 
7796 DEFINE_GUID(IID_IDebugApplicationThread, 0x51973c38, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
7797 #if defined(__cplusplus) && !defined(CINTERFACE)
7798 MIDL_INTERFACE("51973c38-cb0c-11d0-b5c9-00a0244a0e7a")
7799 IDebugApplicationThread : public IRemoteDebugApplicationThread
7800 {
7801     virtual HRESULT STDMETHODCALLTYPE SynchronousCallIntoThread32(
7802         IDebugThreadCall32 *pstcb,
7803         DWORD dwParam1,
7804         DWORD dwParam2,
7805         DWORD dwParam3) = 0;
7806 
7807     virtual HRESULT STDMETHODCALLTYPE QueryIsCurrentThread(
7808         ) = 0;
7809 
7810     virtual HRESULT STDMETHODCALLTYPE QueryIsDebuggerThread(
7811         ) = 0;
7812 
7813     virtual HRESULT STDMETHODCALLTYPE SetDescription(
7814         LPCOLESTR pstrDescription) = 0;
7815 
7816     virtual HRESULT STDMETHODCALLTYPE SetStateString(
7817         LPCOLESTR pstrState) = 0;
7818 
7819 };
7820 #ifdef __CRT_UUID_DECL
7821 __CRT_UUID_DECL(IDebugApplicationThread, 0x51973c38, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
7822 #endif
7823 #else
7824 typedef struct IDebugApplicationThreadVtbl {
7825     BEGIN_INTERFACE
7826 
7827     /*** IUnknown methods ***/
7828     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7829         IDebugApplicationThread *This,
7830         REFIID riid,
7831         void **ppvObject);
7832 
7833     ULONG (STDMETHODCALLTYPE *AddRef)(
7834         IDebugApplicationThread *This);
7835 
7836     ULONG (STDMETHODCALLTYPE *Release)(
7837         IDebugApplicationThread *This);
7838 
7839     /*** IRemoteDebugApplicationThread methods ***/
7840     HRESULT (STDMETHODCALLTYPE *GetSystemThreadId)(
7841         IDebugApplicationThread *This,
7842         DWORD *dwThreadId);
7843 
7844     HRESULT (STDMETHODCALLTYPE *GetApplication)(
7845         IDebugApplicationThread *This,
7846         IRemoteDebugApplication **pprda);
7847 
7848     HRESULT (STDMETHODCALLTYPE *EnumStackFrames)(
7849         IDebugApplicationThread *This,
7850         IEnumDebugStackFrames **ppedsf);
7851 
7852     HRESULT (STDMETHODCALLTYPE *GetDescription)(
7853         IDebugApplicationThread *This,
7854         BSTR *pbstrDescription,
7855         BSTR *pbstrState);
7856 
7857     HRESULT (STDMETHODCALLTYPE *SetNextStatement)(
7858         IDebugApplicationThread *This,
7859         IDebugStackFrame *pStackFrame,
7860         IDebugCodeContext *pCodeContext);
7861 
7862     HRESULT (STDMETHODCALLTYPE *GetState)(
7863         IDebugApplicationThread *This,
7864         DWORD *pState);
7865 
7866     HRESULT (STDMETHODCALLTYPE *Suspend)(
7867         IDebugApplicationThread *This,
7868         DWORD *pdwCount);
7869 
7870     HRESULT (STDMETHODCALLTYPE *Resume)(
7871         IDebugApplicationThread *This,
7872         DWORD *pdwCount);
7873 
7874     HRESULT (STDMETHODCALLTYPE *GetSuspendCount)(
7875         IDebugApplicationThread *This,
7876         DWORD *pdwCount);
7877 
7878     /*** IDebugApplicationThread methods ***/
7879     HRESULT (STDMETHODCALLTYPE *SynchronousCallIntoThread32)(
7880         IDebugApplicationThread *This,
7881         IDebugThreadCall32 *pstcb,
7882         DWORD dwParam1,
7883         DWORD dwParam2,
7884         DWORD dwParam3);
7885 
7886     HRESULT (STDMETHODCALLTYPE *QueryIsCurrentThread)(
7887         IDebugApplicationThread *This);
7888 
7889     HRESULT (STDMETHODCALLTYPE *QueryIsDebuggerThread)(
7890         IDebugApplicationThread *This);
7891 
7892     HRESULT (STDMETHODCALLTYPE *SetDescription)(
7893         IDebugApplicationThread *This,
7894         LPCOLESTR pstrDescription);
7895 
7896     HRESULT (STDMETHODCALLTYPE *SetStateString)(
7897         IDebugApplicationThread *This,
7898         LPCOLESTR pstrState);
7899 
7900     END_INTERFACE
7901 } IDebugApplicationThreadVtbl;
7902 
7903 interface IDebugApplicationThread {
7904     CONST_VTBL IDebugApplicationThreadVtbl* lpVtbl;
7905 };
7906 
7907 #ifdef COBJMACROS
7908 #ifndef WIDL_C_INLINE_WRAPPERS
7909 /*** IUnknown methods ***/
7910 #define IDebugApplicationThread_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7911 #define IDebugApplicationThread_AddRef(This) (This)->lpVtbl->AddRef(This)
7912 #define IDebugApplicationThread_Release(This) (This)->lpVtbl->Release(This)
7913 /*** IRemoteDebugApplicationThread methods ***/
7914 #define IDebugApplicationThread_GetSystemThreadId(This,dwThreadId) (This)->lpVtbl->GetSystemThreadId(This,dwThreadId)
7915 #define IDebugApplicationThread_GetApplication(This,pprda) (This)->lpVtbl->GetApplication(This,pprda)
7916 #define IDebugApplicationThread_EnumStackFrames(This,ppedsf) (This)->lpVtbl->EnumStackFrames(This,ppedsf)
7917 #define IDebugApplicationThread_GetDescription(This,pbstrDescription,pbstrState) (This)->lpVtbl->GetDescription(This,pbstrDescription,pbstrState)
7918 #define IDebugApplicationThread_SetNextStatement(This,pStackFrame,pCodeContext) (This)->lpVtbl->SetNextStatement(This,pStackFrame,pCodeContext)
7919 #define IDebugApplicationThread_GetState(This,pState) (This)->lpVtbl->GetState(This,pState)
7920 #define IDebugApplicationThread_Suspend(This,pdwCount) (This)->lpVtbl->Suspend(This,pdwCount)
7921 #define IDebugApplicationThread_Resume(This,pdwCount) (This)->lpVtbl->Resume(This,pdwCount)
7922 #define IDebugApplicationThread_GetSuspendCount(This,pdwCount) (This)->lpVtbl->GetSuspendCount(This,pdwCount)
7923 /*** IDebugApplicationThread methods ***/
7924 #define IDebugApplicationThread_SynchronousCallIntoThread32(This,pstcb,dwParam1,dwParam2,dwParam3) (This)->lpVtbl->SynchronousCallIntoThread32(This,pstcb,dwParam1,dwParam2,dwParam3)
7925 #define IDebugApplicationThread_QueryIsCurrentThread(This) (This)->lpVtbl->QueryIsCurrentThread(This)
7926 #define IDebugApplicationThread_QueryIsDebuggerThread(This) (This)->lpVtbl->QueryIsDebuggerThread(This)
7927 #define IDebugApplicationThread_SetDescription(This,pstrDescription) (This)->lpVtbl->SetDescription(This,pstrDescription)
7928 #define IDebugApplicationThread_SetStateString(This,pstrState) (This)->lpVtbl->SetStateString(This,pstrState)
7929 #else
7930 /*** IUnknown methods ***/
7931 static FORCEINLINE HRESULT IDebugApplicationThread_QueryInterface(IDebugApplicationThread* This,REFIID riid,void **ppvObject) {
7932     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7933 }
7934 static FORCEINLINE ULONG IDebugApplicationThread_AddRef(IDebugApplicationThread* This) {
7935     return This->lpVtbl->AddRef(This);
7936 }
7937 static FORCEINLINE ULONG IDebugApplicationThread_Release(IDebugApplicationThread* This) {
7938     return This->lpVtbl->Release(This);
7939 }
7940 /*** IRemoteDebugApplicationThread methods ***/
7941 static FORCEINLINE HRESULT IDebugApplicationThread_GetSystemThreadId(IDebugApplicationThread* This,DWORD *dwThreadId) {
7942     return This->lpVtbl->GetSystemThreadId(This,dwThreadId);
7943 }
7944 static FORCEINLINE HRESULT IDebugApplicationThread_GetApplication(IDebugApplicationThread* This,IRemoteDebugApplication **pprda) {
7945     return This->lpVtbl->GetApplication(This,pprda);
7946 }
7947 static FORCEINLINE HRESULT IDebugApplicationThread_EnumStackFrames(IDebugApplicationThread* This,IEnumDebugStackFrames **ppedsf) {
7948     return This->lpVtbl->EnumStackFrames(This,ppedsf);
7949 }
7950 static FORCEINLINE HRESULT IDebugApplicationThread_GetDescription(IDebugApplicationThread* This,BSTR *pbstrDescription,BSTR *pbstrState) {
7951     return This->lpVtbl->GetDescription(This,pbstrDescription,pbstrState);
7952 }
7953 static FORCEINLINE HRESULT IDebugApplicationThread_SetNextStatement(IDebugApplicationThread* This,IDebugStackFrame *pStackFrame,IDebugCodeContext *pCodeContext) {
7954     return This->lpVtbl->SetNextStatement(This,pStackFrame,pCodeContext);
7955 }
7956 static FORCEINLINE HRESULT IDebugApplicationThread_GetState(IDebugApplicationThread* This,DWORD *pState) {
7957     return This->lpVtbl->GetState(This,pState);
7958 }
7959 static FORCEINLINE HRESULT IDebugApplicationThread_Suspend(IDebugApplicationThread* This,DWORD *pdwCount) {
7960     return This->lpVtbl->Suspend(This,pdwCount);
7961 }
7962 static FORCEINLINE HRESULT IDebugApplicationThread_Resume(IDebugApplicationThread* This,DWORD *pdwCount) {
7963     return This->lpVtbl->Resume(This,pdwCount);
7964 }
7965 static FORCEINLINE HRESULT IDebugApplicationThread_GetSuspendCount(IDebugApplicationThread* This,DWORD *pdwCount) {
7966     return This->lpVtbl->GetSuspendCount(This,pdwCount);
7967 }
7968 /*** IDebugApplicationThread methods ***/
7969 static FORCEINLINE HRESULT IDebugApplicationThread_SynchronousCallIntoThread32(IDebugApplicationThread* This,IDebugThreadCall32 *pstcb,DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) {
7970     return This->lpVtbl->SynchronousCallIntoThread32(This,pstcb,dwParam1,dwParam2,dwParam3);
7971 }
7972 static FORCEINLINE HRESULT IDebugApplicationThread_QueryIsCurrentThread(IDebugApplicationThread* This) {
7973     return This->lpVtbl->QueryIsCurrentThread(This);
7974 }
7975 static FORCEINLINE HRESULT IDebugApplicationThread_QueryIsDebuggerThread(IDebugApplicationThread* This) {
7976     return This->lpVtbl->QueryIsDebuggerThread(This);
7977 }
7978 static FORCEINLINE HRESULT IDebugApplicationThread_SetDescription(IDebugApplicationThread* This,LPCOLESTR pstrDescription) {
7979     return This->lpVtbl->SetDescription(This,pstrDescription);
7980 }
7981 static FORCEINLINE HRESULT IDebugApplicationThread_SetStateString(IDebugApplicationThread* This,LPCOLESTR pstrState) {
7982     return This->lpVtbl->SetStateString(This,pstrState);
7983 }
7984 #endif
7985 #endif
7986 
7987 #endif
7988 
7989 
7990 #endif  /* __IDebugApplicationThread_INTERFACE_DEFINED__ */
7991 
7992 /*****************************************************************************
7993  * IDebugApplicationThread64 interface
7994  */
7995 #ifndef __IDebugApplicationThread64_INTERFACE_DEFINED__
7996 #define __IDebugApplicationThread64_INTERFACE_DEFINED__
7997 
7998 DEFINE_GUID(IID_IDebugApplicationThread64, 0x9dac5886, 0xdbad, 0x456d, 0x9d,0xee, 0x5d,0xec,0x39,0xab,0x3d,0xda);
7999 #if defined(__cplusplus) && !defined(CINTERFACE)
8000 MIDL_INTERFACE("9dac5886-dbad-456d-9dee-5dec39ab3dda")
8001 IDebugApplicationThread64 : public IDebugApplicationThread
8002 {
8003     virtual HRESULT STDMETHODCALLTYPE SynchronousCallIntoThread64(
8004         IDebugThreadCall64 *pstcb,
8005         DWORDLONG dwParam1,
8006         DWORDLONG dwParam2,
8007         DWORDLONG dwParam3) = 0;
8008 
8009 };
8010 #ifdef __CRT_UUID_DECL
8011 __CRT_UUID_DECL(IDebugApplicationThread64, 0x9dac5886, 0xdbad, 0x456d, 0x9d,0xee, 0x5d,0xec,0x39,0xab,0x3d,0xda)
8012 #endif
8013 #else
8014 typedef struct IDebugApplicationThread64Vtbl {
8015     BEGIN_INTERFACE
8016 
8017     /*** IUnknown methods ***/
8018     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8019         IDebugApplicationThread64 *This,
8020         REFIID riid,
8021         void **ppvObject);
8022 
8023     ULONG (STDMETHODCALLTYPE *AddRef)(
8024         IDebugApplicationThread64 *This);
8025 
8026     ULONG (STDMETHODCALLTYPE *Release)(
8027         IDebugApplicationThread64 *This);
8028 
8029     /*** IRemoteDebugApplicationThread methods ***/
8030     HRESULT (STDMETHODCALLTYPE *GetSystemThreadId)(
8031         IDebugApplicationThread64 *This,
8032         DWORD *dwThreadId);
8033 
8034     HRESULT (STDMETHODCALLTYPE *GetApplication)(
8035         IDebugApplicationThread64 *This,
8036         IRemoteDebugApplication **pprda);
8037 
8038     HRESULT (STDMETHODCALLTYPE *EnumStackFrames)(
8039         IDebugApplicationThread64 *This,
8040         IEnumDebugStackFrames **ppedsf);
8041 
8042     HRESULT (STDMETHODCALLTYPE *GetDescription)(
8043         IDebugApplicationThread64 *This,
8044         BSTR *pbstrDescription,
8045         BSTR *pbstrState);
8046 
8047     HRESULT (STDMETHODCALLTYPE *SetNextStatement)(
8048         IDebugApplicationThread64 *This,
8049         IDebugStackFrame *pStackFrame,
8050         IDebugCodeContext *pCodeContext);
8051 
8052     HRESULT (STDMETHODCALLTYPE *GetState)(
8053         IDebugApplicationThread64 *This,
8054         DWORD *pState);
8055 
8056     HRESULT (STDMETHODCALLTYPE *Suspend)(
8057         IDebugApplicationThread64 *This,
8058         DWORD *pdwCount);
8059 
8060     HRESULT (STDMETHODCALLTYPE *Resume)(
8061         IDebugApplicationThread64 *This,
8062         DWORD *pdwCount);
8063 
8064     HRESULT (STDMETHODCALLTYPE *GetSuspendCount)(
8065         IDebugApplicationThread64 *This,
8066         DWORD *pdwCount);
8067 
8068     /*** IDebugApplicationThread methods ***/
8069     HRESULT (STDMETHODCALLTYPE *SynchronousCallIntoThread32)(
8070         IDebugApplicationThread64 *This,
8071         IDebugThreadCall32 *pstcb,
8072         DWORD dwParam1,
8073         DWORD dwParam2,
8074         DWORD dwParam3);
8075 
8076     HRESULT (STDMETHODCALLTYPE *QueryIsCurrentThread)(
8077         IDebugApplicationThread64 *This);
8078 
8079     HRESULT (STDMETHODCALLTYPE *QueryIsDebuggerThread)(
8080         IDebugApplicationThread64 *This);
8081 
8082     HRESULT (STDMETHODCALLTYPE *SetDescription)(
8083         IDebugApplicationThread64 *This,
8084         LPCOLESTR pstrDescription);
8085 
8086     HRESULT (STDMETHODCALLTYPE *SetStateString)(
8087         IDebugApplicationThread64 *This,
8088         LPCOLESTR pstrState);
8089 
8090     /*** IDebugApplicationThread64 methods ***/
8091     HRESULT (STDMETHODCALLTYPE *SynchronousCallIntoThread64)(
8092         IDebugApplicationThread64 *This,
8093         IDebugThreadCall64 *pstcb,
8094         DWORDLONG dwParam1,
8095         DWORDLONG dwParam2,
8096         DWORDLONG dwParam3);
8097 
8098     END_INTERFACE
8099 } IDebugApplicationThread64Vtbl;
8100 
8101 interface IDebugApplicationThread64 {
8102     CONST_VTBL IDebugApplicationThread64Vtbl* lpVtbl;
8103 };
8104 
8105 #ifdef COBJMACROS
8106 #ifndef WIDL_C_INLINE_WRAPPERS
8107 /*** IUnknown methods ***/
8108 #define IDebugApplicationThread64_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8109 #define IDebugApplicationThread64_AddRef(This) (This)->lpVtbl->AddRef(This)
8110 #define IDebugApplicationThread64_Release(This) (This)->lpVtbl->Release(This)
8111 /*** IRemoteDebugApplicationThread methods ***/
8112 #define IDebugApplicationThread64_GetSystemThreadId(This,dwThreadId) (This)->lpVtbl->GetSystemThreadId(This,dwThreadId)
8113 #define IDebugApplicationThread64_GetApplication(This,pprda) (This)->lpVtbl->GetApplication(This,pprda)
8114 #define IDebugApplicationThread64_EnumStackFrames(This,ppedsf) (This)->lpVtbl->EnumStackFrames(This,ppedsf)
8115 #define IDebugApplicationThread64_GetDescription(This,pbstrDescription,pbstrState) (This)->lpVtbl->GetDescription(This,pbstrDescription,pbstrState)
8116 #define IDebugApplicationThread64_SetNextStatement(This,pStackFrame,pCodeContext) (This)->lpVtbl->SetNextStatement(This,pStackFrame,pCodeContext)
8117 #define IDebugApplicationThread64_GetState(This,pState) (This)->lpVtbl->GetState(This,pState)
8118 #define IDebugApplicationThread64_Suspend(This,pdwCount) (This)->lpVtbl->Suspend(This,pdwCount)
8119 #define IDebugApplicationThread64_Resume(This,pdwCount) (This)->lpVtbl->Resume(This,pdwCount)
8120 #define IDebugApplicationThread64_GetSuspendCount(This,pdwCount) (This)->lpVtbl->GetSuspendCount(This,pdwCount)
8121 /*** IDebugApplicationThread methods ***/
8122 #define IDebugApplicationThread64_SynchronousCallIntoThread32(This,pstcb,dwParam1,dwParam2,dwParam3) (This)->lpVtbl->SynchronousCallIntoThread32(This,pstcb,dwParam1,dwParam2,dwParam3)
8123 #define IDebugApplicationThread64_QueryIsCurrentThread(This) (This)->lpVtbl->QueryIsCurrentThread(This)
8124 #define IDebugApplicationThread64_QueryIsDebuggerThread(This) (This)->lpVtbl->QueryIsDebuggerThread(This)
8125 #define IDebugApplicationThread64_SetDescription(This,pstrDescription) (This)->lpVtbl->SetDescription(This,pstrDescription)
8126 #define IDebugApplicationThread64_SetStateString(This,pstrState) (This)->lpVtbl->SetStateString(This,pstrState)
8127 /*** IDebugApplicationThread64 methods ***/
8128 #define IDebugApplicationThread64_SynchronousCallIntoThread64(This,pstcb,dwParam1,dwParam2,dwParam3) (This)->lpVtbl->SynchronousCallIntoThread64(This,pstcb,dwParam1,dwParam2,dwParam3)
8129 #else
8130 /*** IUnknown methods ***/
8131 static FORCEINLINE HRESULT IDebugApplicationThread64_QueryInterface(IDebugApplicationThread64* This,REFIID riid,void **ppvObject) {
8132     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8133 }
8134 static FORCEINLINE ULONG IDebugApplicationThread64_AddRef(IDebugApplicationThread64* This) {
8135     return This->lpVtbl->AddRef(This);
8136 }
8137 static FORCEINLINE ULONG IDebugApplicationThread64_Release(IDebugApplicationThread64* This) {
8138     return This->lpVtbl->Release(This);
8139 }
8140 /*** IRemoteDebugApplicationThread methods ***/
8141 static FORCEINLINE HRESULT IDebugApplicationThread64_GetSystemThreadId(IDebugApplicationThread64* This,DWORD *dwThreadId) {
8142     return This->lpVtbl->GetSystemThreadId(This,dwThreadId);
8143 }
8144 static FORCEINLINE HRESULT IDebugApplicationThread64_GetApplication(IDebugApplicationThread64* This,IRemoteDebugApplication **pprda) {
8145     return This->lpVtbl->GetApplication(This,pprda);
8146 }
8147 static FORCEINLINE HRESULT IDebugApplicationThread64_EnumStackFrames(IDebugApplicationThread64* This,IEnumDebugStackFrames **ppedsf) {
8148     return This->lpVtbl->EnumStackFrames(This,ppedsf);
8149 }
8150 static FORCEINLINE HRESULT IDebugApplicationThread64_GetDescription(IDebugApplicationThread64* This,BSTR *pbstrDescription,BSTR *pbstrState) {
8151     return This->lpVtbl->GetDescription(This,pbstrDescription,pbstrState);
8152 }
8153 static FORCEINLINE HRESULT IDebugApplicationThread64_SetNextStatement(IDebugApplicationThread64* This,IDebugStackFrame *pStackFrame,IDebugCodeContext *pCodeContext) {
8154     return This->lpVtbl->SetNextStatement(This,pStackFrame,pCodeContext);
8155 }
8156 static FORCEINLINE HRESULT IDebugApplicationThread64_GetState(IDebugApplicationThread64* This,DWORD *pState) {
8157     return This->lpVtbl->GetState(This,pState);
8158 }
8159 static FORCEINLINE HRESULT IDebugApplicationThread64_Suspend(IDebugApplicationThread64* This,DWORD *pdwCount) {
8160     return This->lpVtbl->Suspend(This,pdwCount);
8161 }
8162 static FORCEINLINE HRESULT IDebugApplicationThread64_Resume(IDebugApplicationThread64* This,DWORD *pdwCount) {
8163     return This->lpVtbl->Resume(This,pdwCount);
8164 }
8165 static FORCEINLINE HRESULT IDebugApplicationThread64_GetSuspendCount(IDebugApplicationThread64* This,DWORD *pdwCount) {
8166     return This->lpVtbl->GetSuspendCount(This,pdwCount);
8167 }
8168 /*** IDebugApplicationThread methods ***/
8169 static FORCEINLINE HRESULT IDebugApplicationThread64_SynchronousCallIntoThread32(IDebugApplicationThread64* This,IDebugThreadCall32 *pstcb,DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) {
8170     return This->lpVtbl->SynchronousCallIntoThread32(This,pstcb,dwParam1,dwParam2,dwParam3);
8171 }
8172 static FORCEINLINE HRESULT IDebugApplicationThread64_QueryIsCurrentThread(IDebugApplicationThread64* This) {
8173     return This->lpVtbl->QueryIsCurrentThread(This);
8174 }
8175 static FORCEINLINE HRESULT IDebugApplicationThread64_QueryIsDebuggerThread(IDebugApplicationThread64* This) {
8176     return This->lpVtbl->QueryIsDebuggerThread(This);
8177 }
8178 static FORCEINLINE HRESULT IDebugApplicationThread64_SetDescription(IDebugApplicationThread64* This,LPCOLESTR pstrDescription) {
8179     return This->lpVtbl->SetDescription(This,pstrDescription);
8180 }
8181 static FORCEINLINE HRESULT IDebugApplicationThread64_SetStateString(IDebugApplicationThread64* This,LPCOLESTR pstrState) {
8182     return This->lpVtbl->SetStateString(This,pstrState);
8183 }
8184 /*** IDebugApplicationThread64 methods ***/
8185 static FORCEINLINE HRESULT IDebugApplicationThread64_SynchronousCallIntoThread64(IDebugApplicationThread64* This,IDebugThreadCall64 *pstcb,DWORDLONG dwParam1,DWORDLONG dwParam2,DWORDLONG dwParam3) {
8186     return This->lpVtbl->SynchronousCallIntoThread64(This,pstcb,dwParam1,dwParam2,dwParam3);
8187 }
8188 #endif
8189 #endif
8190 
8191 #endif
8192 
8193 
8194 #endif  /* __IDebugApplicationThread64_INTERFACE_DEFINED__ */
8195 
8196 /*****************************************************************************
8197  * IDebugCookie interface
8198  */
8199 #ifndef __IDebugCookie_INTERFACE_DEFINED__
8200 #define __IDebugCookie_INTERFACE_DEFINED__
8201 
8202 DEFINE_GUID(IID_IDebugCookie, 0x51973c39, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
8203 #if defined(__cplusplus) && !defined(CINTERFACE)
8204 MIDL_INTERFACE("51973c39-cb0c-11d0-b5c9-00a0244a0e7a")
8205 IDebugCookie : public IUnknown
8206 {
8207     virtual HRESULT STDMETHODCALLTYPE SetDebugCookie(
8208         DWORD dwDebugAppCookie) = 0;
8209 
8210 };
8211 #ifdef __CRT_UUID_DECL
8212 __CRT_UUID_DECL(IDebugCookie, 0x51973c39, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
8213 #endif
8214 #else
8215 typedef struct IDebugCookieVtbl {
8216     BEGIN_INTERFACE
8217 
8218     /*** IUnknown methods ***/
8219     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8220         IDebugCookie *This,
8221         REFIID riid,
8222         void **ppvObject);
8223 
8224     ULONG (STDMETHODCALLTYPE *AddRef)(
8225         IDebugCookie *This);
8226 
8227     ULONG (STDMETHODCALLTYPE *Release)(
8228         IDebugCookie *This);
8229 
8230     /*** IDebugCookie methods ***/
8231     HRESULT (STDMETHODCALLTYPE *SetDebugCookie)(
8232         IDebugCookie *This,
8233         DWORD dwDebugAppCookie);
8234 
8235     END_INTERFACE
8236 } IDebugCookieVtbl;
8237 
8238 interface IDebugCookie {
8239     CONST_VTBL IDebugCookieVtbl* lpVtbl;
8240 };
8241 
8242 #ifdef COBJMACROS
8243 #ifndef WIDL_C_INLINE_WRAPPERS
8244 /*** IUnknown methods ***/
8245 #define IDebugCookie_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8246 #define IDebugCookie_AddRef(This) (This)->lpVtbl->AddRef(This)
8247 #define IDebugCookie_Release(This) (This)->lpVtbl->Release(This)
8248 /*** IDebugCookie methods ***/
8249 #define IDebugCookie_SetDebugCookie(This,dwDebugAppCookie) (This)->lpVtbl->SetDebugCookie(This,dwDebugAppCookie)
8250 #else
8251 /*** IUnknown methods ***/
8252 static FORCEINLINE HRESULT IDebugCookie_QueryInterface(IDebugCookie* This,REFIID riid,void **ppvObject) {
8253     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8254 }
8255 static FORCEINLINE ULONG IDebugCookie_AddRef(IDebugCookie* This) {
8256     return This->lpVtbl->AddRef(This);
8257 }
8258 static FORCEINLINE ULONG IDebugCookie_Release(IDebugCookie* This) {
8259     return This->lpVtbl->Release(This);
8260 }
8261 /*** IDebugCookie methods ***/
8262 static FORCEINLINE HRESULT IDebugCookie_SetDebugCookie(IDebugCookie* This,DWORD dwDebugAppCookie) {
8263     return This->lpVtbl->SetDebugCookie(This,dwDebugAppCookie);
8264 }
8265 #endif
8266 #endif
8267 
8268 #endif
8269 
8270 
8271 #endif  /* __IDebugCookie_INTERFACE_DEFINED__ */
8272 
8273 /*****************************************************************************
8274  * IEnumDebugApplicationNodes interface
8275  */
8276 #ifndef __IEnumDebugApplicationNodes_INTERFACE_DEFINED__
8277 #define __IEnumDebugApplicationNodes_INTERFACE_DEFINED__
8278 
8279 DEFINE_GUID(IID_IEnumDebugApplicationNodes, 0x51973c3a, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
8280 #if defined(__cplusplus) && !defined(CINTERFACE)
8281 MIDL_INTERFACE("51973c3a-cb0c-11d0-b5c9-00a0244a0e7a")
8282 IEnumDebugApplicationNodes : public IUnknown
8283 {
8284     virtual HRESULT __stdcall Next(
8285         ULONG celt,
8286         IDebugApplicationNode **pprddp,
8287         ULONG *pceltFetched) = 0;
8288 
8289     virtual HRESULT STDMETHODCALLTYPE Skip(
8290         ULONG celt) = 0;
8291 
8292     virtual HRESULT STDMETHODCALLTYPE Reset(
8293         ) = 0;
8294 
8295     virtual HRESULT STDMETHODCALLTYPE Clone(
8296         IEnumDebugApplicationNodes **pperddp) = 0;
8297 
8298 };
8299 #ifdef __CRT_UUID_DECL
8300 __CRT_UUID_DECL(IEnumDebugApplicationNodes, 0x51973c3a, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
8301 #endif
8302 #else
8303 typedef struct IEnumDebugApplicationNodesVtbl {
8304     BEGIN_INTERFACE
8305 
8306     /*** IUnknown methods ***/
8307     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8308         IEnumDebugApplicationNodes *This,
8309         REFIID riid,
8310         void **ppvObject);
8311 
8312     ULONG (STDMETHODCALLTYPE *AddRef)(
8313         IEnumDebugApplicationNodes *This);
8314 
8315     ULONG (STDMETHODCALLTYPE *Release)(
8316         IEnumDebugApplicationNodes *This);
8317 
8318     /*** IEnumDebugApplicationNodes methods ***/
8319     HRESULT (__stdcall *Next)(
8320         IEnumDebugApplicationNodes *This,
8321         ULONG celt,
8322         IDebugApplicationNode **pprddp,
8323         ULONG *pceltFetched);
8324 
8325     HRESULT (STDMETHODCALLTYPE *Skip)(
8326         IEnumDebugApplicationNodes *This,
8327         ULONG celt);
8328 
8329     HRESULT (STDMETHODCALLTYPE *Reset)(
8330         IEnumDebugApplicationNodes *This);
8331 
8332     HRESULT (STDMETHODCALLTYPE *Clone)(
8333         IEnumDebugApplicationNodes *This,
8334         IEnumDebugApplicationNodes **pperddp);
8335 
8336     END_INTERFACE
8337 } IEnumDebugApplicationNodesVtbl;
8338 
8339 interface IEnumDebugApplicationNodes {
8340     CONST_VTBL IEnumDebugApplicationNodesVtbl* lpVtbl;
8341 };
8342 
8343 #ifdef COBJMACROS
8344 #ifndef WIDL_C_INLINE_WRAPPERS
8345 /*** IUnknown methods ***/
8346 #define IEnumDebugApplicationNodes_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8347 #define IEnumDebugApplicationNodes_AddRef(This) (This)->lpVtbl->AddRef(This)
8348 #define IEnumDebugApplicationNodes_Release(This) (This)->lpVtbl->Release(This)
8349 /*** IEnumDebugApplicationNodes methods ***/
8350 #define IEnumDebugApplicationNodes_Next(This,celt,pprddp,pceltFetched) (This)->lpVtbl->Next(This,celt,pprddp,pceltFetched)
8351 #define IEnumDebugApplicationNodes_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
8352 #define IEnumDebugApplicationNodes_Reset(This) (This)->lpVtbl->Reset(This)
8353 #define IEnumDebugApplicationNodes_Clone(This,pperddp) (This)->lpVtbl->Clone(This,pperddp)
8354 #else
8355 /*** IUnknown methods ***/
8356 static FORCEINLINE HRESULT IEnumDebugApplicationNodes_QueryInterface(IEnumDebugApplicationNodes* This,REFIID riid,void **ppvObject) {
8357     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8358 }
8359 static FORCEINLINE ULONG IEnumDebugApplicationNodes_AddRef(IEnumDebugApplicationNodes* This) {
8360     return This->lpVtbl->AddRef(This);
8361 }
8362 static FORCEINLINE ULONG IEnumDebugApplicationNodes_Release(IEnumDebugApplicationNodes* This) {
8363     return This->lpVtbl->Release(This);
8364 }
8365 /*** IEnumDebugApplicationNodes methods ***/
8366 static FORCEINLINE HRESULT IEnumDebugApplicationNodes_Next(IEnumDebugApplicationNodes* This,ULONG celt,IDebugApplicationNode **pprddp,ULONG *pceltFetched) {
8367     return This->lpVtbl->Next(This,celt,pprddp,pceltFetched);
8368 }
8369 static FORCEINLINE HRESULT IEnumDebugApplicationNodes_Skip(IEnumDebugApplicationNodes* This,ULONG celt) {
8370     return This->lpVtbl->Skip(This,celt);
8371 }
8372 static FORCEINLINE HRESULT IEnumDebugApplicationNodes_Reset(IEnumDebugApplicationNodes* This) {
8373     return This->lpVtbl->Reset(This);
8374 }
8375 static FORCEINLINE HRESULT IEnumDebugApplicationNodes_Clone(IEnumDebugApplicationNodes* This,IEnumDebugApplicationNodes **pperddp) {
8376     return This->lpVtbl->Clone(This,pperddp);
8377 }
8378 #endif
8379 #endif
8380 
8381 #endif
8382 
8383 HRESULT __stdcall IEnumDebugApplicationNodes_RemoteNext_Proxy(
8384     IEnumDebugApplicationNodes* This,
8385     ULONG celt,
8386     IDebugApplicationNode **pprddp,
8387     ULONG *pceltFetched);
8388 void __RPC_STUB IEnumDebugApplicationNodes_RemoteNext_Stub(
8389     IRpcStubBuffer* This,
8390     IRpcChannelBuffer* pRpcChannelBuffer,
8391     PRPC_MESSAGE pRpcMessage,
8392     DWORD* pdwStubPhase);
8393 HRESULT CALLBACK IEnumDebugApplicationNodes_Next_Proxy(
8394     IEnumDebugApplicationNodes* This,
8395     ULONG celt,
8396     IDebugApplicationNode **pprddp,
8397     ULONG *pceltFetched);
8398 HRESULT __RPC_STUB IEnumDebugApplicationNodes_Next_Stub(
8399     IEnumDebugApplicationNodes* This,
8400     ULONG celt,
8401     IDebugApplicationNode **pprddp,
8402     ULONG *pceltFetched);
8403 
8404 #endif  /* __IEnumDebugApplicationNodes_INTERFACE_DEFINED__ */
8405 
8406 /*****************************************************************************
8407  * IEnumRemoteDebugApplications interface
8408  */
8409 #ifndef __IEnumRemoteDebugApplications_INTERFACE_DEFINED__
8410 #define __IEnumRemoteDebugApplications_INTERFACE_DEFINED__
8411 
8412 DEFINE_GUID(IID_IEnumRemoteDebugApplications, 0x51973c3b, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
8413 #if defined(__cplusplus) && !defined(CINTERFACE)
8414 MIDL_INTERFACE("51973c3b-cb0c-11d0-b5c9-00a0244a0e7a")
8415 IEnumRemoteDebugApplications : public IUnknown
8416 {
8417     virtual HRESULT __stdcall Next(
8418         ULONG celt,
8419         IRemoteDebugApplication **ppda,
8420         ULONG *pceltFetched) = 0;
8421 
8422     virtual HRESULT STDMETHODCALLTYPE Skip(
8423         ULONG celt) = 0;
8424 
8425     virtual HRESULT STDMETHODCALLTYPE Reset(
8426         ) = 0;
8427 
8428     virtual HRESULT STDMETHODCALLTYPE Clone(
8429         IEnumRemoteDebugApplications **ppessd) = 0;
8430 
8431 };
8432 #ifdef __CRT_UUID_DECL
8433 __CRT_UUID_DECL(IEnumRemoteDebugApplications, 0x51973c3b, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
8434 #endif
8435 #else
8436 typedef struct IEnumRemoteDebugApplicationsVtbl {
8437     BEGIN_INTERFACE
8438 
8439     /*** IUnknown methods ***/
8440     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8441         IEnumRemoteDebugApplications *This,
8442         REFIID riid,
8443         void **ppvObject);
8444 
8445     ULONG (STDMETHODCALLTYPE *AddRef)(
8446         IEnumRemoteDebugApplications *This);
8447 
8448     ULONG (STDMETHODCALLTYPE *Release)(
8449         IEnumRemoteDebugApplications *This);
8450 
8451     /*** IEnumRemoteDebugApplications methods ***/
8452     HRESULT (__stdcall *Next)(
8453         IEnumRemoteDebugApplications *This,
8454         ULONG celt,
8455         IRemoteDebugApplication **ppda,
8456         ULONG *pceltFetched);
8457 
8458     HRESULT (STDMETHODCALLTYPE *Skip)(
8459         IEnumRemoteDebugApplications *This,
8460         ULONG celt);
8461 
8462     HRESULT (STDMETHODCALLTYPE *Reset)(
8463         IEnumRemoteDebugApplications *This);
8464 
8465     HRESULT (STDMETHODCALLTYPE *Clone)(
8466         IEnumRemoteDebugApplications *This,
8467         IEnumRemoteDebugApplications **ppessd);
8468 
8469     END_INTERFACE
8470 } IEnumRemoteDebugApplicationsVtbl;
8471 
8472 interface IEnumRemoteDebugApplications {
8473     CONST_VTBL IEnumRemoteDebugApplicationsVtbl* lpVtbl;
8474 };
8475 
8476 #ifdef COBJMACROS
8477 #ifndef WIDL_C_INLINE_WRAPPERS
8478 /*** IUnknown methods ***/
8479 #define IEnumRemoteDebugApplications_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8480 #define IEnumRemoteDebugApplications_AddRef(This) (This)->lpVtbl->AddRef(This)
8481 #define IEnumRemoteDebugApplications_Release(This) (This)->lpVtbl->Release(This)
8482 /*** IEnumRemoteDebugApplications methods ***/
8483 #define IEnumRemoteDebugApplications_Next(This,celt,ppda,pceltFetched) (This)->lpVtbl->Next(This,celt,ppda,pceltFetched)
8484 #define IEnumRemoteDebugApplications_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
8485 #define IEnumRemoteDebugApplications_Reset(This) (This)->lpVtbl->Reset(This)
8486 #define IEnumRemoteDebugApplications_Clone(This,ppessd) (This)->lpVtbl->Clone(This,ppessd)
8487 #else
8488 /*** IUnknown methods ***/
8489 static FORCEINLINE HRESULT IEnumRemoteDebugApplications_QueryInterface(IEnumRemoteDebugApplications* This,REFIID riid,void **ppvObject) {
8490     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8491 }
8492 static FORCEINLINE ULONG IEnumRemoteDebugApplications_AddRef(IEnumRemoteDebugApplications* This) {
8493     return This->lpVtbl->AddRef(This);
8494 }
8495 static FORCEINLINE ULONG IEnumRemoteDebugApplications_Release(IEnumRemoteDebugApplications* This) {
8496     return This->lpVtbl->Release(This);
8497 }
8498 /*** IEnumRemoteDebugApplications methods ***/
8499 static FORCEINLINE HRESULT IEnumRemoteDebugApplications_Next(IEnumRemoteDebugApplications* This,ULONG celt,IRemoteDebugApplication **ppda,ULONG *pceltFetched) {
8500     return This->lpVtbl->Next(This,celt,ppda,pceltFetched);
8501 }
8502 static FORCEINLINE HRESULT IEnumRemoteDebugApplications_Skip(IEnumRemoteDebugApplications* This,ULONG celt) {
8503     return This->lpVtbl->Skip(This,celt);
8504 }
8505 static FORCEINLINE HRESULT IEnumRemoteDebugApplications_Reset(IEnumRemoteDebugApplications* This) {
8506     return This->lpVtbl->Reset(This);
8507 }
8508 static FORCEINLINE HRESULT IEnumRemoteDebugApplications_Clone(IEnumRemoteDebugApplications* This,IEnumRemoteDebugApplications **ppessd) {
8509     return This->lpVtbl->Clone(This,ppessd);
8510 }
8511 #endif
8512 #endif
8513 
8514 #endif
8515 
8516 HRESULT __stdcall IEnumRemoteDebugApplications_RemoteNext_Proxy(
8517     IEnumRemoteDebugApplications* This,
8518     ULONG celt,
8519     IRemoteDebugApplication **ppda,
8520     ULONG *pceltFetched);
8521 void __RPC_STUB IEnumRemoteDebugApplications_RemoteNext_Stub(
8522     IRpcStubBuffer* This,
8523     IRpcChannelBuffer* pRpcChannelBuffer,
8524     PRPC_MESSAGE pRpcMessage,
8525     DWORD* pdwStubPhase);
8526 HRESULT CALLBACK IEnumRemoteDebugApplications_Next_Proxy(
8527     IEnumRemoteDebugApplications* This,
8528     ULONG celt,
8529     IRemoteDebugApplication **ppda,
8530     ULONG *pceltFetched);
8531 HRESULT __RPC_STUB IEnumRemoteDebugApplications_Next_Stub(
8532     IEnumRemoteDebugApplications* This,
8533     ULONG celt,
8534     IRemoteDebugApplication **ppda,
8535     ULONG *pceltFetched);
8536 
8537 #endif  /* __IEnumRemoteDebugApplications_INTERFACE_DEFINED__ */
8538 
8539 /*****************************************************************************
8540  * IEnumRemoteDebugApplicationThreads interface
8541  */
8542 #ifndef __IEnumRemoteDebugApplicationThreads_INTERFACE_DEFINED__
8543 #define __IEnumRemoteDebugApplicationThreads_INTERFACE_DEFINED__
8544 
8545 DEFINE_GUID(IID_IEnumRemoteDebugApplicationThreads, 0x51973c3c, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
8546 #if defined(__cplusplus) && !defined(CINTERFACE)
8547 MIDL_INTERFACE("51973c3c-cb0c-11d0-b5c9-00a0244a0e7a")
8548 IEnumRemoteDebugApplicationThreads : public IUnknown
8549 {
8550     virtual HRESULT __stdcall Next(
8551         ULONG celt,
8552         IRemoteDebugApplicationThread **pprdat,
8553         ULONG *pceltFetched) = 0;
8554 
8555     virtual HRESULT STDMETHODCALLTYPE Skip(
8556         ULONG celt) = 0;
8557 
8558     virtual HRESULT STDMETHODCALLTYPE Reset(
8559         ) = 0;
8560 
8561     virtual HRESULT STDMETHODCALLTYPE Clone(
8562         IEnumRemoteDebugApplicationThreads **pperdat) = 0;
8563 
8564 };
8565 #ifdef __CRT_UUID_DECL
8566 __CRT_UUID_DECL(IEnumRemoteDebugApplicationThreads, 0x51973c3c, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
8567 #endif
8568 #else
8569 typedef struct IEnumRemoteDebugApplicationThreadsVtbl {
8570     BEGIN_INTERFACE
8571 
8572     /*** IUnknown methods ***/
8573     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8574         IEnumRemoteDebugApplicationThreads *This,
8575         REFIID riid,
8576         void **ppvObject);
8577 
8578     ULONG (STDMETHODCALLTYPE *AddRef)(
8579         IEnumRemoteDebugApplicationThreads *This);
8580 
8581     ULONG (STDMETHODCALLTYPE *Release)(
8582         IEnumRemoteDebugApplicationThreads *This);
8583 
8584     /*** IEnumRemoteDebugApplicationThreads methods ***/
8585     HRESULT (__stdcall *Next)(
8586         IEnumRemoteDebugApplicationThreads *This,
8587         ULONG celt,
8588         IRemoteDebugApplicationThread **pprdat,
8589         ULONG *pceltFetched);
8590 
8591     HRESULT (STDMETHODCALLTYPE *Skip)(
8592         IEnumRemoteDebugApplicationThreads *This,
8593         ULONG celt);
8594 
8595     HRESULT (STDMETHODCALLTYPE *Reset)(
8596         IEnumRemoteDebugApplicationThreads *This);
8597 
8598     HRESULT (STDMETHODCALLTYPE *Clone)(
8599         IEnumRemoteDebugApplicationThreads *This,
8600         IEnumRemoteDebugApplicationThreads **pperdat);
8601 
8602     END_INTERFACE
8603 } IEnumRemoteDebugApplicationThreadsVtbl;
8604 
8605 interface IEnumRemoteDebugApplicationThreads {
8606     CONST_VTBL IEnumRemoteDebugApplicationThreadsVtbl* lpVtbl;
8607 };
8608 
8609 #ifdef COBJMACROS
8610 #ifndef WIDL_C_INLINE_WRAPPERS
8611 /*** IUnknown methods ***/
8612 #define IEnumRemoteDebugApplicationThreads_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8613 #define IEnumRemoteDebugApplicationThreads_AddRef(This) (This)->lpVtbl->AddRef(This)
8614 #define IEnumRemoteDebugApplicationThreads_Release(This) (This)->lpVtbl->Release(This)
8615 /*** IEnumRemoteDebugApplicationThreads methods ***/
8616 #define IEnumRemoteDebugApplicationThreads_Next(This,celt,pprdat,pceltFetched) (This)->lpVtbl->Next(This,celt,pprdat,pceltFetched)
8617 #define IEnumRemoteDebugApplicationThreads_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
8618 #define IEnumRemoteDebugApplicationThreads_Reset(This) (This)->lpVtbl->Reset(This)
8619 #define IEnumRemoteDebugApplicationThreads_Clone(This,pperdat) (This)->lpVtbl->Clone(This,pperdat)
8620 #else
8621 /*** IUnknown methods ***/
8622 static FORCEINLINE HRESULT IEnumRemoteDebugApplicationThreads_QueryInterface(IEnumRemoteDebugApplicationThreads* This,REFIID riid,void **ppvObject) {
8623     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8624 }
8625 static FORCEINLINE ULONG IEnumRemoteDebugApplicationThreads_AddRef(IEnumRemoteDebugApplicationThreads* This) {
8626     return This->lpVtbl->AddRef(This);
8627 }
8628 static FORCEINLINE ULONG IEnumRemoteDebugApplicationThreads_Release(IEnumRemoteDebugApplicationThreads* This) {
8629     return This->lpVtbl->Release(This);
8630 }
8631 /*** IEnumRemoteDebugApplicationThreads methods ***/
8632 static FORCEINLINE HRESULT IEnumRemoteDebugApplicationThreads_Next(IEnumRemoteDebugApplicationThreads* This,ULONG celt,IRemoteDebugApplicationThread **pprdat,ULONG *pceltFetched) {
8633     return This->lpVtbl->Next(This,celt,pprdat,pceltFetched);
8634 }
8635 static FORCEINLINE HRESULT IEnumRemoteDebugApplicationThreads_Skip(IEnumRemoteDebugApplicationThreads* This,ULONG celt) {
8636     return This->lpVtbl->Skip(This,celt);
8637 }
8638 static FORCEINLINE HRESULT IEnumRemoteDebugApplicationThreads_Reset(IEnumRemoteDebugApplicationThreads* This) {
8639     return This->lpVtbl->Reset(This);
8640 }
8641 static FORCEINLINE HRESULT IEnumRemoteDebugApplicationThreads_Clone(IEnumRemoteDebugApplicationThreads* This,IEnumRemoteDebugApplicationThreads **pperdat) {
8642     return This->lpVtbl->Clone(This,pperdat);
8643 }
8644 #endif
8645 #endif
8646 
8647 #endif
8648 
8649 HRESULT __stdcall IEnumRemoteDebugApplicationThreads_RemoteNext_Proxy(
8650     IEnumRemoteDebugApplicationThreads* This,
8651     ULONG celt,
8652     IRemoteDebugApplicationThread **ppdat,
8653     ULONG *pceltFetched);
8654 void __RPC_STUB IEnumRemoteDebugApplicationThreads_RemoteNext_Stub(
8655     IRpcStubBuffer* This,
8656     IRpcChannelBuffer* pRpcChannelBuffer,
8657     PRPC_MESSAGE pRpcMessage,
8658     DWORD* pdwStubPhase);
8659 HRESULT CALLBACK IEnumRemoteDebugApplicationThreads_Next_Proxy(
8660     IEnumRemoteDebugApplicationThreads* This,
8661     ULONG celt,
8662     IRemoteDebugApplicationThread **pprdat,
8663     ULONG *pceltFetched);
8664 HRESULT __RPC_STUB IEnumRemoteDebugApplicationThreads_Next_Stub(
8665     IEnumRemoteDebugApplicationThreads* This,
8666     ULONG celt,
8667     IRemoteDebugApplicationThread **ppdat,
8668     ULONG *pceltFetched);
8669 
8670 #endif  /* __IEnumRemoteDebugApplicationThreads_INTERFACE_DEFINED__ */
8671 
8672 /*****************************************************************************
8673  * IDebugFormatter interface
8674  */
8675 #ifndef __IDebugFormatter_INTERFACE_DEFINED__
8676 #define __IDebugFormatter_INTERFACE_DEFINED__
8677 
8678 DEFINE_GUID(IID_IDebugFormatter, 0x51973c05, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
8679 #if defined(__cplusplus) && !defined(CINTERFACE)
8680 MIDL_INTERFACE("51973c05-cb0c-11d0-b5c9-00a0244a0e7a")
8681 IDebugFormatter : public IUnknown
8682 {
8683     virtual HRESULT STDMETHODCALLTYPE GetStringForVariant(
8684         VARIANT *pvar,
8685         ULONG nRadix,
8686         BSTR *pbstrValue) = 0;
8687 
8688     virtual HRESULT STDMETHODCALLTYPE GetVariantForString(
8689         LPCOLESTR pwstrValue,
8690         VARIANT *pvar) = 0;
8691 
8692     virtual HRESULT STDMETHODCALLTYPE GetStringForVarType(
8693         VARTYPE vt,
8694         TYPEDESC *ptdescArrayType,
8695         BSTR *pbstr) = 0;
8696 
8697 };
8698 #ifdef __CRT_UUID_DECL
8699 __CRT_UUID_DECL(IDebugFormatter, 0x51973c05, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
8700 #endif
8701 #else
8702 typedef struct IDebugFormatterVtbl {
8703     BEGIN_INTERFACE
8704 
8705     /*** IUnknown methods ***/
8706     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8707         IDebugFormatter *This,
8708         REFIID riid,
8709         void **ppvObject);
8710 
8711     ULONG (STDMETHODCALLTYPE *AddRef)(
8712         IDebugFormatter *This);
8713 
8714     ULONG (STDMETHODCALLTYPE *Release)(
8715         IDebugFormatter *This);
8716 
8717     /*** IDebugFormatter methods ***/
8718     HRESULT (STDMETHODCALLTYPE *GetStringForVariant)(
8719         IDebugFormatter *This,
8720         VARIANT *pvar,
8721         ULONG nRadix,
8722         BSTR *pbstrValue);
8723 
8724     HRESULT (STDMETHODCALLTYPE *GetVariantForString)(
8725         IDebugFormatter *This,
8726         LPCOLESTR pwstrValue,
8727         VARIANT *pvar);
8728 
8729     HRESULT (STDMETHODCALLTYPE *GetStringForVarType)(
8730         IDebugFormatter *This,
8731         VARTYPE vt,
8732         TYPEDESC *ptdescArrayType,
8733         BSTR *pbstr);
8734 
8735     END_INTERFACE
8736 } IDebugFormatterVtbl;
8737 
8738 interface IDebugFormatter {
8739     CONST_VTBL IDebugFormatterVtbl* lpVtbl;
8740 };
8741 
8742 #ifdef COBJMACROS
8743 #ifndef WIDL_C_INLINE_WRAPPERS
8744 /*** IUnknown methods ***/
8745 #define IDebugFormatter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8746 #define IDebugFormatter_AddRef(This) (This)->lpVtbl->AddRef(This)
8747 #define IDebugFormatter_Release(This) (This)->lpVtbl->Release(This)
8748 /*** IDebugFormatter methods ***/
8749 #define IDebugFormatter_GetStringForVariant(This,pvar,nRadix,pbstrValue) (This)->lpVtbl->GetStringForVariant(This,pvar,nRadix,pbstrValue)
8750 #define IDebugFormatter_GetVariantForString(This,pwstrValue,pvar) (This)->lpVtbl->GetVariantForString(This,pwstrValue,pvar)
8751 #define IDebugFormatter_GetStringForVarType(This,vt,ptdescArrayType,pbstr) (This)->lpVtbl->GetStringForVarType(This,vt,ptdescArrayType,pbstr)
8752 #else
8753 /*** IUnknown methods ***/
8754 static FORCEINLINE HRESULT IDebugFormatter_QueryInterface(IDebugFormatter* This,REFIID riid,void **ppvObject) {
8755     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8756 }
8757 static FORCEINLINE ULONG IDebugFormatter_AddRef(IDebugFormatter* This) {
8758     return This->lpVtbl->AddRef(This);
8759 }
8760 static FORCEINLINE ULONG IDebugFormatter_Release(IDebugFormatter* This) {
8761     return This->lpVtbl->Release(This);
8762 }
8763 /*** IDebugFormatter methods ***/
8764 static FORCEINLINE HRESULT IDebugFormatter_GetStringForVariant(IDebugFormatter* This,VARIANT *pvar,ULONG nRadix,BSTR *pbstrValue) {
8765     return This->lpVtbl->GetStringForVariant(This,pvar,nRadix,pbstrValue);
8766 }
8767 static FORCEINLINE HRESULT IDebugFormatter_GetVariantForString(IDebugFormatter* This,LPCOLESTR pwstrValue,VARIANT *pvar) {
8768     return This->lpVtbl->GetVariantForString(This,pwstrValue,pvar);
8769 }
8770 static FORCEINLINE HRESULT IDebugFormatter_GetStringForVarType(IDebugFormatter* This,VARTYPE vt,TYPEDESC *ptdescArrayType,BSTR *pbstr) {
8771     return This->lpVtbl->GetStringForVarType(This,vt,ptdescArrayType,pbstr);
8772 }
8773 #endif
8774 #endif
8775 
8776 #endif
8777 
8778 
8779 #endif  /* __IDebugFormatter_INTERFACE_DEFINED__ */
8780 
8781 /*****************************************************************************
8782  * ISimpleConnectionPoint interface
8783  */
8784 #ifndef __ISimpleConnectionPoint_INTERFACE_DEFINED__
8785 #define __ISimpleConnectionPoint_INTERFACE_DEFINED__
8786 
8787 DEFINE_GUID(IID_ISimpleConnectionPoint, 0x51973c3e, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
8788 #if defined(__cplusplus) && !defined(CINTERFACE)
8789 MIDL_INTERFACE("51973c3e-cb0c-11d0-b5c9-00a0244a0e7a")
8790 ISimpleConnectionPoint : public IUnknown
8791 {
8792     virtual HRESULT STDMETHODCALLTYPE GetEventCount(
8793         ULONG *pulCount) = 0;
8794 
8795     virtual HRESULT STDMETHODCALLTYPE DescribeEvents(
8796         ULONG iEvent,
8797         ULONG cEvents,
8798         DISPID *prgid,
8799         BSTR *prgbstr,
8800         ULONG *pcEventsFetched) = 0;
8801 
8802     virtual HRESULT STDMETHODCALLTYPE Advise(
8803         IDispatch *pdisp,
8804         DWORD *pdwCookie) = 0;
8805 
8806     virtual HRESULT STDMETHODCALLTYPE Unadvise(
8807         DWORD dwCookie) = 0;
8808 
8809 };
8810 #ifdef __CRT_UUID_DECL
8811 __CRT_UUID_DECL(ISimpleConnectionPoint, 0x51973c3e, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
8812 #endif
8813 #else
8814 typedef struct ISimpleConnectionPointVtbl {
8815     BEGIN_INTERFACE
8816 
8817     /*** IUnknown methods ***/
8818     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8819         ISimpleConnectionPoint *This,
8820         REFIID riid,
8821         void **ppvObject);
8822 
8823     ULONG (STDMETHODCALLTYPE *AddRef)(
8824         ISimpleConnectionPoint *This);
8825 
8826     ULONG (STDMETHODCALLTYPE *Release)(
8827         ISimpleConnectionPoint *This);
8828 
8829     /*** ISimpleConnectionPoint methods ***/
8830     HRESULT (STDMETHODCALLTYPE *GetEventCount)(
8831         ISimpleConnectionPoint *This,
8832         ULONG *pulCount);
8833 
8834     HRESULT (STDMETHODCALLTYPE *DescribeEvents)(
8835         ISimpleConnectionPoint *This,
8836         ULONG iEvent,
8837         ULONG cEvents,
8838         DISPID *prgid,
8839         BSTR *prgbstr,
8840         ULONG *pcEventsFetched);
8841 
8842     HRESULT (STDMETHODCALLTYPE *Advise)(
8843         ISimpleConnectionPoint *This,
8844         IDispatch *pdisp,
8845         DWORD *pdwCookie);
8846 
8847     HRESULT (STDMETHODCALLTYPE *Unadvise)(
8848         ISimpleConnectionPoint *This,
8849         DWORD dwCookie);
8850 
8851     END_INTERFACE
8852 } ISimpleConnectionPointVtbl;
8853 
8854 interface ISimpleConnectionPoint {
8855     CONST_VTBL ISimpleConnectionPointVtbl* lpVtbl;
8856 };
8857 
8858 #ifdef COBJMACROS
8859 #ifndef WIDL_C_INLINE_WRAPPERS
8860 /*** IUnknown methods ***/
8861 #define ISimpleConnectionPoint_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8862 #define ISimpleConnectionPoint_AddRef(This) (This)->lpVtbl->AddRef(This)
8863 #define ISimpleConnectionPoint_Release(This) (This)->lpVtbl->Release(This)
8864 /*** ISimpleConnectionPoint methods ***/
8865 #define ISimpleConnectionPoint_GetEventCount(This,pulCount) (This)->lpVtbl->GetEventCount(This,pulCount)
8866 #define ISimpleConnectionPoint_DescribeEvents(This,iEvent,cEvents,prgid,prgbstr,pcEventsFetched) (This)->lpVtbl->DescribeEvents(This,iEvent,cEvents,prgid,prgbstr,pcEventsFetched)
8867 #define ISimpleConnectionPoint_Advise(This,pdisp,pdwCookie) (This)->lpVtbl->Advise(This,pdisp,pdwCookie)
8868 #define ISimpleConnectionPoint_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie)
8869 #else
8870 /*** IUnknown methods ***/
8871 static FORCEINLINE HRESULT ISimpleConnectionPoint_QueryInterface(ISimpleConnectionPoint* This,REFIID riid,void **ppvObject) {
8872     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8873 }
8874 static FORCEINLINE ULONG ISimpleConnectionPoint_AddRef(ISimpleConnectionPoint* This) {
8875     return This->lpVtbl->AddRef(This);
8876 }
8877 static FORCEINLINE ULONG ISimpleConnectionPoint_Release(ISimpleConnectionPoint* This) {
8878     return This->lpVtbl->Release(This);
8879 }
8880 /*** ISimpleConnectionPoint methods ***/
8881 static FORCEINLINE HRESULT ISimpleConnectionPoint_GetEventCount(ISimpleConnectionPoint* This,ULONG *pulCount) {
8882     return This->lpVtbl->GetEventCount(This,pulCount);
8883 }
8884 static FORCEINLINE HRESULT ISimpleConnectionPoint_DescribeEvents(ISimpleConnectionPoint* This,ULONG iEvent,ULONG cEvents,DISPID *prgid,BSTR *prgbstr,ULONG *pcEventsFetched) {
8885     return This->lpVtbl->DescribeEvents(This,iEvent,cEvents,prgid,prgbstr,pcEventsFetched);
8886 }
8887 static FORCEINLINE HRESULT ISimpleConnectionPoint_Advise(ISimpleConnectionPoint* This,IDispatch *pdisp,DWORD *pdwCookie) {
8888     return This->lpVtbl->Advise(This,pdisp,pdwCookie);
8889 }
8890 static FORCEINLINE HRESULT ISimpleConnectionPoint_Unadvise(ISimpleConnectionPoint* This,DWORD dwCookie) {
8891     return This->lpVtbl->Unadvise(This,dwCookie);
8892 }
8893 #endif
8894 #endif
8895 
8896 #endif
8897 
8898 
8899 #endif  /* __ISimpleConnectionPoint_INTERFACE_DEFINED__ */
8900 
8901 /*****************************************************************************
8902  * IDebugHelper interface
8903  */
8904 #ifndef __IDebugHelper_INTERFACE_DEFINED__
8905 #define __IDebugHelper_INTERFACE_DEFINED__
8906 
8907 DEFINE_GUID(IID_IDebugHelper, 0x51973c3f, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
8908 #if defined(__cplusplus) && !defined(CINTERFACE)
8909 MIDL_INTERFACE("51973c3f-cb0c-11d0-b5c9-00a0244a0e7a")
8910 IDebugHelper : public IUnknown
8911 {
8912     virtual HRESULT STDMETHODCALLTYPE CreatePropertyBrowser(
8913         VARIANT *pvar,
8914         LPCOLESTR bstrName,
8915         IDebugApplicationThread *pdat,
8916         IDebugProperty **ppdob) = 0;
8917 
8918     virtual HRESULT STDMETHODCALLTYPE CreatePropertyBrowserEx(
8919         VARIANT *pvar,
8920         LPCOLESTR bstrName,
8921         IDebugApplicationThread *pdat,
8922         IDebugFormatter *pdf,
8923         IDebugProperty **ppdob) = 0;
8924 
8925     virtual HRESULT STDMETHODCALLTYPE CreateSimpleConnectionPoint(
8926         IDispatch *pdisp,
8927         ISimpleConnectionPoint **ppscp) = 0;
8928 
8929 };
8930 #ifdef __CRT_UUID_DECL
8931 __CRT_UUID_DECL(IDebugHelper, 0x51973c3f, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
8932 #endif
8933 #else
8934 typedef struct IDebugHelperVtbl {
8935     BEGIN_INTERFACE
8936 
8937     /*** IUnknown methods ***/
8938     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8939         IDebugHelper *This,
8940         REFIID riid,
8941         void **ppvObject);
8942 
8943     ULONG (STDMETHODCALLTYPE *AddRef)(
8944         IDebugHelper *This);
8945 
8946     ULONG (STDMETHODCALLTYPE *Release)(
8947         IDebugHelper *This);
8948 
8949     /*** IDebugHelper methods ***/
8950     HRESULT (STDMETHODCALLTYPE *CreatePropertyBrowser)(
8951         IDebugHelper *This,
8952         VARIANT *pvar,
8953         LPCOLESTR bstrName,
8954         IDebugApplicationThread *pdat,
8955         IDebugProperty **ppdob);
8956 
8957     HRESULT (STDMETHODCALLTYPE *CreatePropertyBrowserEx)(
8958         IDebugHelper *This,
8959         VARIANT *pvar,
8960         LPCOLESTR bstrName,
8961         IDebugApplicationThread *pdat,
8962         IDebugFormatter *pdf,
8963         IDebugProperty **ppdob);
8964 
8965     HRESULT (STDMETHODCALLTYPE *CreateSimpleConnectionPoint)(
8966         IDebugHelper *This,
8967         IDispatch *pdisp,
8968         ISimpleConnectionPoint **ppscp);
8969 
8970     END_INTERFACE
8971 } IDebugHelperVtbl;
8972 
8973 interface IDebugHelper {
8974     CONST_VTBL IDebugHelperVtbl* lpVtbl;
8975 };
8976 
8977 #ifdef COBJMACROS
8978 #ifndef WIDL_C_INLINE_WRAPPERS
8979 /*** IUnknown methods ***/
8980 #define IDebugHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8981 #define IDebugHelper_AddRef(This) (This)->lpVtbl->AddRef(This)
8982 #define IDebugHelper_Release(This) (This)->lpVtbl->Release(This)
8983 /*** IDebugHelper methods ***/
8984 #define IDebugHelper_CreatePropertyBrowser(This,pvar,bstrName,pdat,ppdob) (This)->lpVtbl->CreatePropertyBrowser(This,pvar,bstrName,pdat,ppdob)
8985 #define IDebugHelper_CreatePropertyBrowserEx(This,pvar,bstrName,pdat,pdf,ppdob) (This)->lpVtbl->CreatePropertyBrowserEx(This,pvar,bstrName,pdat,pdf,ppdob)
8986 #define IDebugHelper_CreateSimpleConnectionPoint(This,pdisp,ppscp) (This)->lpVtbl->CreateSimpleConnectionPoint(This,pdisp,ppscp)
8987 #else
8988 /*** IUnknown methods ***/
8989 static FORCEINLINE HRESULT IDebugHelper_QueryInterface(IDebugHelper* This,REFIID riid,void **ppvObject) {
8990     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8991 }
8992 static FORCEINLINE ULONG IDebugHelper_AddRef(IDebugHelper* This) {
8993     return This->lpVtbl->AddRef(This);
8994 }
8995 static FORCEINLINE ULONG IDebugHelper_Release(IDebugHelper* This) {
8996     return This->lpVtbl->Release(This);
8997 }
8998 /*** IDebugHelper methods ***/
8999 static FORCEINLINE HRESULT IDebugHelper_CreatePropertyBrowser(IDebugHelper* This,VARIANT *pvar,LPCOLESTR bstrName,IDebugApplicationThread *pdat,IDebugProperty **ppdob) {
9000     return This->lpVtbl->CreatePropertyBrowser(This,pvar,bstrName,pdat,ppdob);
9001 }
9002 static FORCEINLINE HRESULT IDebugHelper_CreatePropertyBrowserEx(IDebugHelper* This,VARIANT *pvar,LPCOLESTR bstrName,IDebugApplicationThread *pdat,IDebugFormatter *pdf,IDebugProperty **ppdob) {
9003     return This->lpVtbl->CreatePropertyBrowserEx(This,pvar,bstrName,pdat,pdf,ppdob);
9004 }
9005 static FORCEINLINE HRESULT IDebugHelper_CreateSimpleConnectionPoint(IDebugHelper* This,IDispatch *pdisp,ISimpleConnectionPoint **ppscp) {
9006     return This->lpVtbl->CreateSimpleConnectionPoint(This,pdisp,ppscp);
9007 }
9008 #endif
9009 #endif
9010 
9011 #endif
9012 
9013 
9014 #endif  /* __IDebugHelper_INTERFACE_DEFINED__ */
9015 
9016 /*****************************************************************************
9017  * IEnumDebugExpressionContexts interface
9018  */
9019 #ifndef __IEnumDebugExpressionContexts_INTERFACE_DEFINED__
9020 #define __IEnumDebugExpressionContexts_INTERFACE_DEFINED__
9021 
9022 DEFINE_GUID(IID_IEnumDebugExpressionContexts, 0x51973c40, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
9023 #if defined(__cplusplus) && !defined(CINTERFACE)
9024 MIDL_INTERFACE("51973c40-cb0c-11d0-b5c9-00a0244a0e7a")
9025 IEnumDebugExpressionContexts : public IUnknown
9026 {
9027     virtual HRESULT __stdcall Next(
9028         ULONG celt,
9029         IDebugExpressionContext **ppdec,
9030         ULONG *pceltFetched) = 0;
9031 
9032     virtual HRESULT STDMETHODCALLTYPE Skip(
9033         ULONG celt) = 0;
9034 
9035     virtual HRESULT STDMETHODCALLTYPE Reset(
9036         ) = 0;
9037 
9038     virtual HRESULT STDMETHODCALLTYPE Clone(
9039         IEnumDebugExpressionContexts **ppedec) = 0;
9040 
9041 };
9042 #ifdef __CRT_UUID_DECL
9043 __CRT_UUID_DECL(IEnumDebugExpressionContexts, 0x51973c40, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
9044 #endif
9045 #else
9046 typedef struct IEnumDebugExpressionContextsVtbl {
9047     BEGIN_INTERFACE
9048 
9049     /*** IUnknown methods ***/
9050     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9051         IEnumDebugExpressionContexts *This,
9052         REFIID riid,
9053         void **ppvObject);
9054 
9055     ULONG (STDMETHODCALLTYPE *AddRef)(
9056         IEnumDebugExpressionContexts *This);
9057 
9058     ULONG (STDMETHODCALLTYPE *Release)(
9059         IEnumDebugExpressionContexts *This);
9060 
9061     /*** IEnumDebugExpressionContexts methods ***/
9062     HRESULT (__stdcall *Next)(
9063         IEnumDebugExpressionContexts *This,
9064         ULONG celt,
9065         IDebugExpressionContext **ppdec,
9066         ULONG *pceltFetched);
9067 
9068     HRESULT (STDMETHODCALLTYPE *Skip)(
9069         IEnumDebugExpressionContexts *This,
9070         ULONG celt);
9071 
9072     HRESULT (STDMETHODCALLTYPE *Reset)(
9073         IEnumDebugExpressionContexts *This);
9074 
9075     HRESULT (STDMETHODCALLTYPE *Clone)(
9076         IEnumDebugExpressionContexts *This,
9077         IEnumDebugExpressionContexts **ppedec);
9078 
9079     END_INTERFACE
9080 } IEnumDebugExpressionContextsVtbl;
9081 
9082 interface IEnumDebugExpressionContexts {
9083     CONST_VTBL IEnumDebugExpressionContextsVtbl* lpVtbl;
9084 };
9085 
9086 #ifdef COBJMACROS
9087 #ifndef WIDL_C_INLINE_WRAPPERS
9088 /*** IUnknown methods ***/
9089 #define IEnumDebugExpressionContexts_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9090 #define IEnumDebugExpressionContexts_AddRef(This) (This)->lpVtbl->AddRef(This)
9091 #define IEnumDebugExpressionContexts_Release(This) (This)->lpVtbl->Release(This)
9092 /*** IEnumDebugExpressionContexts methods ***/
9093 #define IEnumDebugExpressionContexts_Next(This,celt,ppdec,pceltFetched) (This)->lpVtbl->Next(This,celt,ppdec,pceltFetched)
9094 #define IEnumDebugExpressionContexts_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
9095 #define IEnumDebugExpressionContexts_Reset(This) (This)->lpVtbl->Reset(This)
9096 #define IEnumDebugExpressionContexts_Clone(This,ppedec) (This)->lpVtbl->Clone(This,ppedec)
9097 #else
9098 /*** IUnknown methods ***/
9099 static FORCEINLINE HRESULT IEnumDebugExpressionContexts_QueryInterface(IEnumDebugExpressionContexts* This,REFIID riid,void **ppvObject) {
9100     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9101 }
9102 static FORCEINLINE ULONG IEnumDebugExpressionContexts_AddRef(IEnumDebugExpressionContexts* This) {
9103     return This->lpVtbl->AddRef(This);
9104 }
9105 static FORCEINLINE ULONG IEnumDebugExpressionContexts_Release(IEnumDebugExpressionContexts* This) {
9106     return This->lpVtbl->Release(This);
9107 }
9108 /*** IEnumDebugExpressionContexts methods ***/
9109 static FORCEINLINE HRESULT IEnumDebugExpressionContexts_Next(IEnumDebugExpressionContexts* This,ULONG celt,IDebugExpressionContext **ppdec,ULONG *pceltFetched) {
9110     return This->lpVtbl->Next(This,celt,ppdec,pceltFetched);
9111 }
9112 static FORCEINLINE HRESULT IEnumDebugExpressionContexts_Skip(IEnumDebugExpressionContexts* This,ULONG celt) {
9113     return This->lpVtbl->Skip(This,celt);
9114 }
9115 static FORCEINLINE HRESULT IEnumDebugExpressionContexts_Reset(IEnumDebugExpressionContexts* This) {
9116     return This->lpVtbl->Reset(This);
9117 }
9118 static FORCEINLINE HRESULT IEnumDebugExpressionContexts_Clone(IEnumDebugExpressionContexts* This,IEnumDebugExpressionContexts **ppedec) {
9119     return This->lpVtbl->Clone(This,ppedec);
9120 }
9121 #endif
9122 #endif
9123 
9124 #endif
9125 
9126 HRESULT __stdcall IEnumDebugExpressionContexts_RemoteNext_Proxy(
9127     IEnumDebugExpressionContexts* This,
9128     ULONG celt,
9129     IDebugExpressionContext **pprgdec,
9130     ULONG *pceltFetched);
9131 void __RPC_STUB IEnumDebugExpressionContexts_RemoteNext_Stub(
9132     IRpcStubBuffer* This,
9133     IRpcChannelBuffer* pRpcChannelBuffer,
9134     PRPC_MESSAGE pRpcMessage,
9135     DWORD* pdwStubPhase);
9136 HRESULT CALLBACK IEnumDebugExpressionContexts_Next_Proxy(
9137     IEnumDebugExpressionContexts* This,
9138     ULONG celt,
9139     IDebugExpressionContext **ppdec,
9140     ULONG *pceltFetched);
9141 HRESULT __RPC_STUB IEnumDebugExpressionContexts_Next_Stub(
9142     IEnumDebugExpressionContexts* This,
9143     ULONG celt,
9144     IDebugExpressionContext **pprgdec,
9145     ULONG *pceltFetched);
9146 
9147 #endif  /* __IEnumDebugExpressionContexts_INTERFACE_DEFINED__ */
9148 
9149 /*****************************************************************************
9150  * IProvideExpressionContexts interface
9151  */
9152 #ifndef __IProvideExpressionContexts_INTERFACE_DEFINED__
9153 #define __IProvideExpressionContexts_INTERFACE_DEFINED__
9154 
9155 DEFINE_GUID(IID_IProvideExpressionContexts, 0x51973c41, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a);
9156 #if defined(__cplusplus) && !defined(CINTERFACE)
9157 MIDL_INTERFACE("51973c41-cb0c-11d0-b5c9-00a0244a0e7a")
9158 IProvideExpressionContexts : public IUnknown
9159 {
9160     virtual HRESULT STDMETHODCALLTYPE EnumExpressionContexts(
9161         IEnumDebugExpressionContexts **ppedec) = 0;
9162 
9163 };
9164 #ifdef __CRT_UUID_DECL
9165 __CRT_UUID_DECL(IProvideExpressionContexts, 0x51973c41, 0xcb0c, 0x11d0, 0xb5,0xc9, 0x00,0xa0,0x24,0x4a,0x0e,0x7a)
9166 #endif
9167 #else
9168 typedef struct IProvideExpressionContextsVtbl {
9169     BEGIN_INTERFACE
9170 
9171     /*** IUnknown methods ***/
9172     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9173         IProvideExpressionContexts *This,
9174         REFIID riid,
9175         void **ppvObject);
9176 
9177     ULONG (STDMETHODCALLTYPE *AddRef)(
9178         IProvideExpressionContexts *This);
9179 
9180     ULONG (STDMETHODCALLTYPE *Release)(
9181         IProvideExpressionContexts *This);
9182 
9183     /*** IProvideExpressionContexts methods ***/
9184     HRESULT (STDMETHODCALLTYPE *EnumExpressionContexts)(
9185         IProvideExpressionContexts *This,
9186         IEnumDebugExpressionContexts **ppedec);
9187 
9188     END_INTERFACE
9189 } IProvideExpressionContextsVtbl;
9190 
9191 interface IProvideExpressionContexts {
9192     CONST_VTBL IProvideExpressionContextsVtbl* lpVtbl;
9193 };
9194 
9195 #ifdef COBJMACROS
9196 #ifndef WIDL_C_INLINE_WRAPPERS
9197 /*** IUnknown methods ***/
9198 #define IProvideExpressionContexts_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9199 #define IProvideExpressionContexts_AddRef(This) (This)->lpVtbl->AddRef(This)
9200 #define IProvideExpressionContexts_Release(This) (This)->lpVtbl->Release(This)
9201 /*** IProvideExpressionContexts methods ***/
9202 #define IProvideExpressionContexts_EnumExpressionContexts(This,ppedec) (This)->lpVtbl->EnumExpressionContexts(This,ppedec)
9203 #else
9204 /*** IUnknown methods ***/
9205 static FORCEINLINE HRESULT IProvideExpressionContexts_QueryInterface(IProvideExpressionContexts* This,REFIID riid,void **ppvObject) {
9206     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9207 }
9208 static FORCEINLINE ULONG IProvideExpressionContexts_AddRef(IProvideExpressionContexts* This) {
9209     return This->lpVtbl->AddRef(This);
9210 }
9211 static FORCEINLINE ULONG IProvideExpressionContexts_Release(IProvideExpressionContexts* This) {
9212     return This->lpVtbl->Release(This);
9213 }
9214 /*** IProvideExpressionContexts methods ***/
9215 static FORCEINLINE HRESULT IProvideExpressionContexts_EnumExpressionContexts(IProvideExpressionContexts* This,IEnumDebugExpressionContexts **ppedec) {
9216     return This->lpVtbl->EnumExpressionContexts(This,ppedec);
9217 }
9218 #endif
9219 #endif
9220 
9221 #endif
9222 
9223 
9224 #endif  /* __IProvideExpressionContexts_INTERFACE_DEFINED__ */
9225 
9226 #ifndef __ProcessDebugManagerLib_LIBRARY_DEFINED__
9227 #define __ProcessDebugManagerLib_LIBRARY_DEFINED__
9228 
9229 DEFINE_GUID(LIBID_ProcessDebugManagerLib, 0x78a51821, 0x51f4, 0x11d0, 0x8f,0x20, 0x00,0x80,0x5f,0x2c,0xd0,0x64);
9230 
9231 #ifndef __IActiveScriptDebug32_FWD_DEFINED__
9232 #define __IActiveScriptDebug32_FWD_DEFINED__
9233 typedef interface IActiveScriptDebug32 IActiveScriptDebug32;
9234 #ifdef __cplusplus
9235 interface IActiveScriptDebug32;
9236 #endif /* __cplusplus */
9237 #endif
9238 
9239 #ifndef __IActiveScriptDebug64_FWD_DEFINED__
9240 #define __IActiveScriptDebug64_FWD_DEFINED__
9241 typedef interface IActiveScriptDebug64 IActiveScriptDebug64;
9242 #ifdef __cplusplus
9243 interface IActiveScriptDebug64;
9244 #endif /* __cplusplus */
9245 #endif
9246 
9247 #ifndef __IActiveScriptErrorDebug_FWD_DEFINED__
9248 #define __IActiveScriptErrorDebug_FWD_DEFINED__
9249 typedef interface IActiveScriptErrorDebug IActiveScriptErrorDebug;
9250 #ifdef __cplusplus
9251 interface IActiveScriptErrorDebug;
9252 #endif /* __cplusplus */
9253 #endif
9254 
9255 #ifndef __IActiveScriptSiteDebug32_FWD_DEFINED__
9256 #define __IActiveScriptSiteDebug32_FWD_DEFINED__
9257 typedef interface IActiveScriptSiteDebug32 IActiveScriptSiteDebug32;
9258 #ifdef __cplusplus
9259 interface IActiveScriptSiteDebug32;
9260 #endif /* __cplusplus */
9261 #endif
9262 
9263 #ifndef __IActiveScriptSiteDebug64_FWD_DEFINED__
9264 #define __IActiveScriptSiteDebug64_FWD_DEFINED__
9265 typedef interface IActiveScriptSiteDebug64 IActiveScriptSiteDebug64;
9266 #ifdef __cplusplus
9267 interface IActiveScriptSiteDebug64;
9268 #endif /* __cplusplus */
9269 #endif
9270 
9271 #ifndef __IActiveScriptSiteDebugEx_FWD_DEFINED__
9272 #define __IActiveScriptSiteDebugEx_FWD_DEFINED__
9273 typedef interface IActiveScriptSiteDebugEx IActiveScriptSiteDebugEx;
9274 #ifdef __cplusplus
9275 interface IActiveScriptSiteDebugEx;
9276 #endif /* __cplusplus */
9277 #endif
9278 
9279 #ifndef __IApplicationDebugger_FWD_DEFINED__
9280 #define __IApplicationDebugger_FWD_DEFINED__
9281 typedef interface IApplicationDebugger IApplicationDebugger;
9282 #ifdef __cplusplus
9283 interface IApplicationDebugger;
9284 #endif /* __cplusplus */
9285 #endif
9286 
9287 #ifndef __IApplicationDebuggerUI_FWD_DEFINED__
9288 #define __IApplicationDebuggerUI_FWD_DEFINED__
9289 typedef interface IApplicationDebuggerUI IApplicationDebuggerUI;
9290 #ifdef __cplusplus
9291 interface IApplicationDebuggerUI;
9292 #endif /* __cplusplus */
9293 #endif
9294 
9295 #ifndef __IDebugApplication32_FWD_DEFINED__
9296 #define __IDebugApplication32_FWD_DEFINED__
9297 typedef interface IDebugApplication32 IDebugApplication32;
9298 #ifdef __cplusplus
9299 interface IDebugApplication32;
9300 #endif /* __cplusplus */
9301 #endif
9302 
9303 #ifndef __IDebugApplication64_FWD_DEFINED__
9304 #define __IDebugApplication64_FWD_DEFINED__
9305 typedef interface IDebugApplication64 IDebugApplication64;
9306 #ifdef __cplusplus
9307 interface IDebugApplication64;
9308 #endif /* __cplusplus */
9309 #endif
9310 
9311 #ifndef __IDebugApplicationNode_FWD_DEFINED__
9312 #define __IDebugApplicationNode_FWD_DEFINED__
9313 typedef interface IDebugApplicationNode IDebugApplicationNode;
9314 #ifdef __cplusplus
9315 interface IDebugApplicationNode;
9316 #endif /* __cplusplus */
9317 #endif
9318 
9319 #ifndef __IDebugApplicationNodeEvents_FWD_DEFINED__
9320 #define __IDebugApplicationNodeEvents_FWD_DEFINED__
9321 typedef interface IDebugApplicationNodeEvents IDebugApplicationNodeEvents;
9322 #ifdef __cplusplus
9323 interface IDebugApplicationNodeEvents;
9324 #endif /* __cplusplus */
9325 #endif
9326 
9327 #ifndef __IDebugApplicationThread_FWD_DEFINED__
9328 #define __IDebugApplicationThread_FWD_DEFINED__
9329 typedef interface IDebugApplicationThread IDebugApplicationThread;
9330 #ifdef __cplusplus
9331 interface IDebugApplicationThread;
9332 #endif /* __cplusplus */
9333 #endif
9334 
9335 #ifndef __IDebugAsyncOperation_FWD_DEFINED__
9336 #define __IDebugAsyncOperation_FWD_DEFINED__
9337 typedef interface IDebugAsyncOperation IDebugAsyncOperation;
9338 #ifdef __cplusplus
9339 interface IDebugAsyncOperation;
9340 #endif /* __cplusplus */
9341 #endif
9342 
9343 #ifndef __IDebugAsyncOperationCallBack_FWD_DEFINED__
9344 #define __IDebugAsyncOperationCallBack_FWD_DEFINED__
9345 typedef interface IDebugAsyncOperationCallBack IDebugAsyncOperationCallBack;
9346 #ifdef __cplusplus
9347 interface IDebugAsyncOperationCallBack;
9348 #endif /* __cplusplus */
9349 #endif
9350 
9351 #ifndef __IDebugCodeContext_FWD_DEFINED__
9352 #define __IDebugCodeContext_FWD_DEFINED__
9353 typedef interface IDebugCodeContext IDebugCodeContext;
9354 #ifdef __cplusplus
9355 interface IDebugCodeContext;
9356 #endif /* __cplusplus */
9357 #endif
9358 
9359 #ifndef __IDebugCookie_FWD_DEFINED__
9360 #define __IDebugCookie_FWD_DEFINED__
9361 typedef interface IDebugCookie IDebugCookie;
9362 #ifdef __cplusplus
9363 interface IDebugCookie;
9364 #endif /* __cplusplus */
9365 #endif
9366 
9367 #ifndef __IDebugDocument_FWD_DEFINED__
9368 #define __IDebugDocument_FWD_DEFINED__
9369 typedef interface IDebugDocument IDebugDocument;
9370 #ifdef __cplusplus
9371 interface IDebugDocument;
9372 #endif /* __cplusplus */
9373 #endif
9374 
9375 #ifndef __IDebugDocumentContext_FWD_DEFINED__
9376 #define __IDebugDocumentContext_FWD_DEFINED__
9377 typedef interface IDebugDocumentContext IDebugDocumentContext;
9378 #ifdef __cplusplus
9379 interface IDebugDocumentContext;
9380 #endif /* __cplusplus */
9381 #endif
9382 
9383 #ifndef __IDebugDocumentHelper32_FWD_DEFINED__
9384 #define __IDebugDocumentHelper32_FWD_DEFINED__
9385 typedef interface IDebugDocumentHelper32 IDebugDocumentHelper32;
9386 #ifdef __cplusplus
9387 interface IDebugDocumentHelper32;
9388 #endif /* __cplusplus */
9389 #endif
9390 
9391 #ifndef __IDebugDocumentHelper64_FWD_DEFINED__
9392 #define __IDebugDocumentHelper64_FWD_DEFINED__
9393 typedef interface IDebugDocumentHelper64 IDebugDocumentHelper64;
9394 #ifdef __cplusplus
9395 interface IDebugDocumentHelper64;
9396 #endif /* __cplusplus */
9397 #endif
9398 
9399 #ifndef __IDebugDocumentHost_FWD_DEFINED__
9400 #define __IDebugDocumentHost_FWD_DEFINED__
9401 typedef interface IDebugDocumentHost IDebugDocumentHost;
9402 #ifdef __cplusplus
9403 interface IDebugDocumentHost;
9404 #endif /* __cplusplus */
9405 #endif
9406 
9407 #ifndef __IDebugDocumentInfo_FWD_DEFINED__
9408 #define __IDebugDocumentInfo_FWD_DEFINED__
9409 typedef interface IDebugDocumentInfo IDebugDocumentInfo;
9410 #ifdef __cplusplus
9411 interface IDebugDocumentInfo;
9412 #endif /* __cplusplus */
9413 #endif
9414 
9415 #ifndef __IDebugDocumentProvider_FWD_DEFINED__
9416 #define __IDebugDocumentProvider_FWD_DEFINED__
9417 typedef interface IDebugDocumentProvider IDebugDocumentProvider;
9418 #ifdef __cplusplus
9419 interface IDebugDocumentProvider;
9420 #endif /* __cplusplus */
9421 #endif
9422 
9423 #ifndef __IDebugDocumentText_FWD_DEFINED__
9424 #define __IDebugDocumentText_FWD_DEFINED__
9425 typedef interface IDebugDocumentText IDebugDocumentText;
9426 #ifdef __cplusplus
9427 interface IDebugDocumentText;
9428 #endif /* __cplusplus */
9429 #endif
9430 
9431 #ifndef __IDebugDocumentTextAuthor_FWD_DEFINED__
9432 #define __IDebugDocumentTextAuthor_FWD_DEFINED__
9433 typedef interface IDebugDocumentTextAuthor IDebugDocumentTextAuthor;
9434 #ifdef __cplusplus
9435 interface IDebugDocumentTextAuthor;
9436 #endif /* __cplusplus */
9437 #endif
9438 
9439 #ifndef __IDebugDocumentTextEvents_FWD_DEFINED__
9440 #define __IDebugDocumentTextEvents_FWD_DEFINED__
9441 typedef interface IDebugDocumentTextEvents IDebugDocumentTextEvents;
9442 #ifdef __cplusplus
9443 interface IDebugDocumentTextEvents;
9444 #endif /* __cplusplus */
9445 #endif
9446 
9447 #ifndef __IDebugDocumentTextExternalAuthor_FWD_DEFINED__
9448 #define __IDebugDocumentTextExternalAuthor_FWD_DEFINED__
9449 typedef interface IDebugDocumentTextExternalAuthor IDebugDocumentTextExternalAuthor;
9450 #ifdef __cplusplus
9451 interface IDebugDocumentTextExternalAuthor;
9452 #endif /* __cplusplus */
9453 #endif
9454 
9455 #ifndef __IDebugExpression_FWD_DEFINED__
9456 #define __IDebugExpression_FWD_DEFINED__
9457 typedef interface IDebugExpression IDebugExpression;
9458 #ifdef __cplusplus
9459 interface IDebugExpression;
9460 #endif /* __cplusplus */
9461 #endif
9462 
9463 #ifndef __IDebugExpressionCallBack_FWD_DEFINED__
9464 #define __IDebugExpressionCallBack_FWD_DEFINED__
9465 typedef interface IDebugExpressionCallBack IDebugExpressionCallBack;
9466 #ifdef __cplusplus
9467 interface IDebugExpressionCallBack;
9468 #endif /* __cplusplus */
9469 #endif
9470 
9471 #ifndef __IDebugExpressionContext_FWD_DEFINED__
9472 #define __IDebugExpressionContext_FWD_DEFINED__
9473 typedef interface IDebugExpressionContext IDebugExpressionContext;
9474 #ifdef __cplusplus
9475 interface IDebugExpressionContext;
9476 #endif /* __cplusplus */
9477 #endif
9478 
9479 #ifndef __IDebugFormatter_FWD_DEFINED__
9480 #define __IDebugFormatter_FWD_DEFINED__
9481 typedef interface IDebugFormatter IDebugFormatter;
9482 #ifdef __cplusplus
9483 interface IDebugFormatter;
9484 #endif /* __cplusplus */
9485 #endif
9486 
9487 #ifndef __IDebugHelper_FWD_DEFINED__
9488 #define __IDebugHelper_FWD_DEFINED__
9489 typedef interface IDebugHelper IDebugHelper;
9490 #ifdef __cplusplus
9491 interface IDebugHelper;
9492 #endif /* __cplusplus */
9493 #endif
9494 
9495 #ifndef __IDebugSessionProvider_FWD_DEFINED__
9496 #define __IDebugSessionProvider_FWD_DEFINED__
9497 typedef interface IDebugSessionProvider IDebugSessionProvider;
9498 #ifdef __cplusplus
9499 interface IDebugSessionProvider;
9500 #endif /* __cplusplus */
9501 #endif
9502 
9503 #ifndef __IDebugStackFrame_FWD_DEFINED__
9504 #define __IDebugStackFrame_FWD_DEFINED__
9505 typedef interface IDebugStackFrame IDebugStackFrame;
9506 #ifdef __cplusplus
9507 interface IDebugStackFrame;
9508 #endif /* __cplusplus */
9509 #endif
9510 
9511 #ifndef __IDebugStackFrameSniffer_FWD_DEFINED__
9512 #define __IDebugStackFrameSniffer_FWD_DEFINED__
9513 typedef interface IDebugStackFrameSniffer IDebugStackFrameSniffer;
9514 #ifdef __cplusplus
9515 interface IDebugStackFrameSniffer;
9516 #endif /* __cplusplus */
9517 #endif
9518 
9519 #ifndef __IDebugStackFrameSnifferEx32_FWD_DEFINED__
9520 #define __IDebugStackFrameSnifferEx32_FWD_DEFINED__
9521 typedef interface IDebugStackFrameSnifferEx32 IDebugStackFrameSnifferEx32;
9522 #ifdef __cplusplus
9523 interface IDebugStackFrameSnifferEx32;
9524 #endif /* __cplusplus */
9525 #endif
9526 
9527 #ifndef __IDebugStackFrameSnifferEx64_FWD_DEFINED__
9528 #define __IDebugStackFrameSnifferEx64_FWD_DEFINED__
9529 typedef interface IDebugStackFrameSnifferEx64 IDebugStackFrameSnifferEx64;
9530 #ifdef __cplusplus
9531 interface IDebugStackFrameSnifferEx64;
9532 #endif /* __cplusplus */
9533 #endif
9534 
9535 #ifndef __IDebugSyncOperation_FWD_DEFINED__
9536 #define __IDebugSyncOperation_FWD_DEFINED__
9537 typedef interface IDebugSyncOperation IDebugSyncOperation;
9538 #ifdef __cplusplus
9539 interface IDebugSyncOperation;
9540 #endif /* __cplusplus */
9541 #endif
9542 
9543 #ifndef __IDebugThreadCall32_FWD_DEFINED__
9544 #define __IDebugThreadCall32_FWD_DEFINED__
9545 typedef interface IDebugThreadCall32 IDebugThreadCall32;
9546 #ifdef __cplusplus
9547 interface IDebugThreadCall32;
9548 #endif /* __cplusplus */
9549 #endif
9550 
9551 #ifndef __IDebugThreadCall64_FWD_DEFINED__
9552 #define __IDebugThreadCall64_FWD_DEFINED__
9553 typedef interface IDebugThreadCall64 IDebugThreadCall64;
9554 #ifdef __cplusplus
9555 interface IDebugThreadCall64;
9556 #endif /* __cplusplus */
9557 #endif
9558 
9559 #ifndef __IEnumDebugApplicationNodes_FWD_DEFINED__
9560 #define __IEnumDebugApplicationNodes_FWD_DEFINED__
9561 typedef interface IEnumDebugApplicationNodes IEnumDebugApplicationNodes;
9562 #ifdef __cplusplus
9563 interface IEnumDebugApplicationNodes;
9564 #endif /* __cplusplus */
9565 #endif
9566 
9567 #ifndef __IEnumDebugCodeContexts_FWD_DEFINED__
9568 #define __IEnumDebugCodeContexts_FWD_DEFINED__
9569 typedef interface IEnumDebugCodeContexts IEnumDebugCodeContexts;
9570 #ifdef __cplusplus
9571 interface IEnumDebugCodeContexts;
9572 #endif /* __cplusplus */
9573 #endif
9574 
9575 #ifndef __IEnumDebugExpressionContexts_FWD_DEFINED__
9576 #define __IEnumDebugExpressionContexts_FWD_DEFINED__
9577 typedef interface IEnumDebugExpressionContexts IEnumDebugExpressionContexts;
9578 #ifdef __cplusplus
9579 interface IEnumDebugExpressionContexts;
9580 #endif /* __cplusplus */
9581 #endif
9582 
9583 #ifndef __IEnumDebugStackFrames_FWD_DEFINED__
9584 #define __IEnumDebugStackFrames_FWD_DEFINED__
9585 typedef interface IEnumDebugStackFrames IEnumDebugStackFrames;
9586 #ifdef __cplusplus
9587 interface IEnumDebugStackFrames;
9588 #endif /* __cplusplus */
9589 #endif
9590 
9591 #ifndef __IEnumDebugStackFrames64_FWD_DEFINED__
9592 #define __IEnumDebugStackFrames64_FWD_DEFINED__
9593 typedef interface IEnumDebugStackFrames64 IEnumDebugStackFrames64;
9594 #ifdef __cplusplus
9595 interface IEnumDebugStackFrames64;
9596 #endif /* __cplusplus */
9597 #endif
9598 
9599 #ifndef __IEnumRemoteDebugApplications_FWD_DEFINED__
9600 #define __IEnumRemoteDebugApplications_FWD_DEFINED__
9601 typedef interface IEnumRemoteDebugApplications IEnumRemoteDebugApplications;
9602 #ifdef __cplusplus
9603 interface IEnumRemoteDebugApplications;
9604 #endif /* __cplusplus */
9605 #endif
9606 
9607 #ifndef __IEnumRemoteDebugApplicationThreads_FWD_DEFINED__
9608 #define __IEnumRemoteDebugApplicationThreads_FWD_DEFINED__
9609 typedef interface IEnumRemoteDebugApplicationThreads IEnumRemoteDebugApplicationThreads;
9610 #ifdef __cplusplus
9611 interface IEnumRemoteDebugApplicationThreads;
9612 #endif /* __cplusplus */
9613 #endif
9614 
9615 #ifndef __IProcessDebugManager32_FWD_DEFINED__
9616 #define __IProcessDebugManager32_FWD_DEFINED__
9617 typedef interface IProcessDebugManager32 IProcessDebugManager32;
9618 #ifdef __cplusplus
9619 interface IProcessDebugManager32;
9620 #endif /* __cplusplus */
9621 #endif
9622 
9623 #ifndef __IProcessDebugManager64_FWD_DEFINED__
9624 #define __IProcessDebugManager64_FWD_DEFINED__
9625 typedef interface IProcessDebugManager64 IProcessDebugManager64;
9626 #ifdef __cplusplus
9627 interface IProcessDebugManager64;
9628 #endif /* __cplusplus */
9629 #endif
9630 
9631 #ifndef __IProvideExpressionContexts_FWD_DEFINED__
9632 #define __IProvideExpressionContexts_FWD_DEFINED__
9633 typedef interface IProvideExpressionContexts IProvideExpressionContexts;
9634 #ifdef __cplusplus
9635 interface IProvideExpressionContexts;
9636 #endif /* __cplusplus */
9637 #endif
9638 
9639 #ifndef __IMachineDebugManager_FWD_DEFINED__
9640 #define __IMachineDebugManager_FWD_DEFINED__
9641 typedef interface IMachineDebugManager IMachineDebugManager;
9642 #ifdef __cplusplus
9643 interface IMachineDebugManager;
9644 #endif /* __cplusplus */
9645 #endif
9646 
9647 #ifndef __IMachineDebugManagerCookie_FWD_DEFINED__
9648 #define __IMachineDebugManagerCookie_FWD_DEFINED__
9649 typedef interface IMachineDebugManagerCookie IMachineDebugManagerCookie;
9650 #ifdef __cplusplus
9651 interface IMachineDebugManagerCookie;
9652 #endif /* __cplusplus */
9653 #endif
9654 
9655 #ifndef __IMachineDebugManagerEvents_FWD_DEFINED__
9656 #define __IMachineDebugManagerEvents_FWD_DEFINED__
9657 typedef interface IMachineDebugManagerEvents IMachineDebugManagerEvents;
9658 #ifdef __cplusplus
9659 interface IMachineDebugManagerEvents;
9660 #endif /* __cplusplus */
9661 #endif
9662 
9663 #ifndef __IRemoteDebugApplication_FWD_DEFINED__
9664 #define __IRemoteDebugApplication_FWD_DEFINED__
9665 typedef interface IRemoteDebugApplication IRemoteDebugApplication;
9666 #ifdef __cplusplus
9667 interface IRemoteDebugApplication;
9668 #endif /* __cplusplus */
9669 #endif
9670 
9671 #ifndef __IRemoteDebugApplicationEvents_FWD_DEFINED__
9672 #define __IRemoteDebugApplicationEvents_FWD_DEFINED__
9673 typedef interface IRemoteDebugApplicationEvents IRemoteDebugApplicationEvents;
9674 #ifdef __cplusplus
9675 interface IRemoteDebugApplicationEvents;
9676 #endif /* __cplusplus */
9677 #endif
9678 
9679 #ifndef __IRemoteDebugApplicationThread_FWD_DEFINED__
9680 #define __IRemoteDebugApplicationThread_FWD_DEFINED__
9681 typedef interface IRemoteDebugApplicationThread IRemoteDebugApplicationThread;
9682 #ifdef __cplusplus
9683 interface IRemoteDebugApplicationThread;
9684 #endif /* __cplusplus */
9685 #endif
9686 
9687 #ifndef __ISimpleConnectionPoint_FWD_DEFINED__
9688 #define __ISimpleConnectionPoint_FWD_DEFINED__
9689 typedef interface ISimpleConnectionPoint ISimpleConnectionPoint;
9690 #ifdef __cplusplus
9691 interface ISimpleConnectionPoint;
9692 #endif /* __cplusplus */
9693 #endif
9694 
9695 /*****************************************************************************
9696  * ProcessDebugManager coclass
9697  */
9698 
9699 DEFINE_GUID(CLSID_ProcessDebugManager, 0x78a51822, 0x51f4, 0x11d0, 0x8f,0x20, 0x00,0x80,0x5f,0x2c,0xd0,0x64);
9700 
9701 #ifdef __cplusplus
9702 class DECLSPEC_UUID("78a51822-51f4-11d0-8f20-00805f2cd064") ProcessDebugManager;
9703 #ifdef __CRT_UUID_DECL
9704 __CRT_UUID_DECL(ProcessDebugManager, 0x78a51822, 0x51f4, 0x11d0, 0x8f,0x20, 0x00,0x80,0x5f,0x2c,0xd0,0x64)
9705 #endif
9706 #endif
9707 
9708 /*****************************************************************************
9709  * DebugHelper coclass
9710  */
9711 
9712 DEFINE_GUID(CLSID_DebugHelper, 0x0bfcc060, 0x8c1d, 0x11d0, 0xac,0xcd, 0x00,0xaa,0x00,0x60,0x27,0x5c);
9713 
9714 #ifdef __cplusplus
9715 class DECLSPEC_UUID("0bfcc060-8c1d-11d0-accd-00aa0060275c") DebugHelper;
9716 #ifdef __CRT_UUID_DECL
9717 __CRT_UUID_DECL(DebugHelper, 0x0bfcc060, 0x8c1d, 0x11d0, 0xac,0xcd, 0x00,0xaa,0x00,0x60,0x27,0x5c)
9718 #endif
9719 #endif
9720 
9721 EXTERN_C const CLSID CLSID_CDebugDocumentHelper;
9722 /*****************************************************************************
9723  * CDebugDocumentHelper coclass
9724  */
9725 
9726 DEFINE_GUID(CLSID_CDebugDocumentHelper, 0x83b8bca6, 0x687c, 0x11d0, 0xa4,0x05, 0x00,0xaa,0x00,0x60,0x27,0x5c);
9727 
9728 #ifdef __cplusplus
9729 class DECLSPEC_UUID("83b8bca6-687c-11d0-a405-00aa0060275c") CDebugDocumentHelper;
9730 #ifdef __CRT_UUID_DECL
9731 __CRT_UUID_DECL(CDebugDocumentHelper, 0x83b8bca6, 0x687c, 0x11d0, 0xa4,0x05, 0x00,0xaa,0x00,0x60,0x27,0x5c)
9732 #endif
9733 #endif
9734 
9735 #ifdef DEBUG
9736 #define MachineDebugManger MachineDebugManager_DEBUG
9737 #define CLSID_MachineDebugManager CLSID_MachineDebugManager_DEBUG
9738 #else
9739 #define MachineDebugManger MachineDebugManager_RETAIL
9740 #define CLSID_MachineDebugManager CLSID_MachineDebugManager_RETAIL
9741 #endif
9742 /*****************************************************************************
9743  * MachineDebugManager_RETAIL coclass
9744  */
9745 
9746 DEFINE_GUID(CLSID_MachineDebugManager_RETAIL, 0x0c0a3666, 0x30c9, 0x11d0, 0x8f,0x20, 0x00,0x80,0x5f,0x2c,0xd0,0x64);
9747 
9748 #ifdef __cplusplus
9749 class DECLSPEC_UUID("0c0a3666-30c9-11d0-8f20-00805f2cd064") MachineDebugManager_RETAIL;
9750 #ifdef __CRT_UUID_DECL
9751 __CRT_UUID_DECL(MachineDebugManager_RETAIL, 0x0c0a3666, 0x30c9, 0x11d0, 0x8f,0x20, 0x00,0x80,0x5f,0x2c,0xd0,0x64)
9752 #endif
9753 #endif
9754 
9755 /*****************************************************************************
9756  * MachineDebugManager_DEBUG coclass
9757  */
9758 
9759 DEFINE_GUID(CLSID_MachineDebugManager_DEBUG, 0x49769cec, 0x3a55, 0x4bb0, 0xb6,0x97, 0x88,0xfe,0xde,0x77,0xe8,0xea);
9760 
9761 #ifdef __cplusplus
9762 class DECLSPEC_UUID("49769cec-3a55-4bb0-b697-88fede77e8ea") MachineDebugManager_DEBUG;
9763 #ifdef __CRT_UUID_DECL
9764 __CRT_UUID_DECL(MachineDebugManager_DEBUG, 0x49769cec, 0x3a55, 0x4bb0, 0xb6,0x97, 0x88,0xfe,0xde,0x77,0xe8,0xea)
9765 #endif
9766 #endif
9767 
9768 /*****************************************************************************
9769  * DefaultDebugSessionProvider coclass
9770  */
9771 
9772 DEFINE_GUID(CLSID_DefaultDebugSessionProvider, 0x834128a2, 0x51f4, 0x11d0, 0x8f,0x20, 0x00,0x80,0x5f,0x2c,0xd0,0x64);
9773 
9774 #ifdef __cplusplus
9775 class DECLSPEC_UUID("834128a2-51f4-11d0-8f20-00805f2cd064") DefaultDebugSessionProvider;
9776 #ifdef __CRT_UUID_DECL
9777 __CRT_UUID_DECL(DefaultDebugSessionProvider, 0x834128a2, 0x51f4, 0x11d0, 0x8f,0x20, 0x00,0x80,0x5f,0x2c,0xd0,0x64)
9778 #endif
9779 #endif
9780 
9781 #endif /* __ProcessDebugManagerLib_LIBRARY_DEFINED__ */
9782 #endif
9783 #endif
9784 /* Begin additional prototypes for all interfaces */
9785 
9786 ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
9787 unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
9788 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
9789 void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
9790 
9791 /* End additional prototypes */
9792 
9793 #ifdef __cplusplus
9794 }
9795 #endif
9796 
9797 #endif /* __activdbg_h__ */
9798