blob: ca4053c54146c943d73d4b38c06d2a9a65f059ce [file] [log] [blame]
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef DO_NO_IMPORTS
import "ocidl.idl";
import "oleidl.idl";
import "oaidl.idl";
#ifndef AD7_NO_AD7_IMPORTS
import "activscp.idl";
import "dbgprop.idl";
#endif
#endif
cpp_quote("#include <winapifamily.h>")
cpp_quote("")
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
cpp_quote("")
cpp_quote("#ifndef __ActivDbg_h")
cpp_quote("#define __ActivDbg_h")
interface IActiveScriptDebug32;
interface IActiveScriptDebug64;
interface IActiveScriptErrorDebug;
interface IActiveScriptSiteDebug32;
interface IActiveScriptSiteDebug64;
interface IActiveScriptSiteDebugEx;
interface IActiveScriptTextInfo;
interface IApplicationDebugger;
interface IDebugApplication32;
interface IDebugApplication64;
interface IDebugApplicationNode;
interface IDebugApplicationNodeEvents;
interface IDebugApplicationThread;
interface IDebugAsyncOperation;
interface IDebugAsyncOperationCallBack;
interface IDebugCodeContext;
interface IDebugDocument;
interface IDebugDocumentContext;
interface IDebugDocumentHelper32;
interface IDebugDocumentHelper64;
interface IDebugDocumentHost;
interface IDebugDocumentInfo;
interface IDebugDocumentProvider;
interface IDebugDocumentText;
interface IDebugDocumentTextAuthor;
interface IDebugDocumentTextEvents;
interface IDebugExpression;
interface IDebugExpressionCallBack;
interface IDebugExpressionContext;
interface IDebugFormatter;
interface IDebugSessionProvider;
interface IDebugStackFrame;
interface IDebugStackFrameSniffer;
interface IDebugSyncOperation;
interface IDebugThreadCall32;
interface IDebugThreadCall64;
interface IEnumActiveScriptDebugs;
interface IEnumDebugApplicationNodes;
interface IEnumDebugCodeContexts;
interface IEnumDebugDocumentContexts;
interface IEnumDebugExpressionContexts;
interface IEnumDebugObjectBrowsers;
interface IEnumDebugStackFrames;
interface IEnumDebugStackFrames64;
interface IEnumRemoteDebugApplications;
interface IEnumRemoteDebugApplicationThreads;
interface IMachineDebugManager;
interface IMachineDebugManagerCookie;
interface IMachineDebugManagerEvents;
interface IProcessDebugManager;
interface IProvideExpressionContexts;
interface IRemoteDebugApplication;
interface IRemoteDebugApplicationThread;
typedef DWORD APPBREAKFLAGS;
typedef WORD SOURCE_TEXT_ATTR;
typedef DWORD TEXT_DOC_ATTR;
typedef enum tagBREAKPOINT_STATE {
BREAKPOINT_DELETED = 0,
BREAKPOINT_DISABLED = 1,
BREAKPOINT_ENABLED = 2
} BREAKPOINT_STATE;
typedef enum tagBREAKREASON {
BREAKREASON_STEP,
BREAKREASON_BREAKPOINT,
BREAKREASON_DEBUGGER_BLOCK,
BREAKREASON_HOST_INITIATED,
BREAKREASON_LANGUAGE_INITIATED,
BREAKREASON_DEBUGGER_HALT,
BREAKREASON_ERROR,
BREAKREASON_JIT
} BREAKREASON;
typedef enum tagBREAKRESUME_ACTION {
BREAKRESUMEACTION_ABORT,
BREAKRESUMEACTION_CONTINUE,
BREAKRESUMEACTION_STEP_INTO,
BREAKRESUMEACTION_STEP_OVER,
BREAKRESUMEACTION_STEP_OUT,
BREAKRESUMEACTION_IGNORE,
} BREAKRESUMEACTION;
typedef enum tagDOCUMENTNAMETYPE {
DOCUMENTNAMETYPE_APPNODE,
DOCUMENTNAMETYPE_TITLE,
DOCUMENTNAMETYPE_FILE_TAIL,
DOCUMENTNAMETYPE_URL,
DOCUMENTNAMETYPE_UNIQUE_TITLE,
} DOCUMENTNAMETYPE;
typedef enum tagERRORRESUMEACTION {
ERRORRESUMEACTION_ReexecuteErrorStatement,
ERRORRESUMEACTION_AbortCallAndReturnErrorToCaller,
ERRORRESUMEACTION_SkipErrorStatement,
} ERRORRESUMEACTION;
typedef struct tagDebugStackFrameDescriptor {
IDebugStackFrame *pdsf;
DWORD dwMin;
DWORD dwLim;
BOOL fFinal;
IUnknown *punkFinal;
} DebugStackFrameDescriptor;
typedef struct tagDebugStackFrameDescriptor64 {
IDebugStackFrame *pdsf;
DWORDLONG dwMin;
DWORDLONG dwLim;
BOOL fFinal;
IUnknown *punkFinal;
} DebugStackFrameDescriptor64;
const APPBREAKFLAGS APPBREAKFLAG_DEBUGGER_BLOCK = 0x00000001;
const APPBREAKFLAGS APPBREAKFLAG_DEBUGGER_HALT = 0x00000002;
const APPBREAKFLAGS APPBREAKFLAG_STEP = 0x00010000;
const APPBREAKFLAGS APPBREAKFLAG_NESTED = 0x00020000;
const APPBREAKFLAGS APPBREAKFLAG_STEPTYPE_SOURCE = 0x00000000;
const APPBREAKFLAGS APPBREAKFLAG_STEPTYPE_BYTECODE = 0x00100000;
const APPBREAKFLAGS APPBREAKFLAG_STEPTYPE_MACHINE = 0x00200000;
const APPBREAKFLAGS APPBREAKFLAG_STEPTYPE_MASK = 0x00f00000;
const APPBREAKFLAGS APPBREAKFLAG_IN_BREAKPOINT = 0x80000000;
const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_KEYWORD = 0x1;
const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_COMMENT = 0x2;
const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_NONSOURCE = 0x4;
const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_OPERATOR = 0x8;
const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_NUMBER = 0x10;
const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_STRING = 0x20;
const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_FUNCTION_START = 0x40;
const TEXT_DOC_ATTR TEXT_DOC_ATTR_READONLY = 0x1;
const TEXT_DOC_ATTR TEXT_DOC_ATTR_TYPE_PRIMARY = 0x2;
const TEXT_DOC_ATTR TEXT_DOC_ATTR_TYPE_WORKER = 0x4;
const TEXT_DOC_ATTR TEXT_DOC_ATTR_TYPE_SCRIPT = 0x8;
cpp_quote("")
const DWORD DEBUG_TEXT_ISEXPRESSION = 0x1;
const DWORD DEBUG_TEXT_RETURNVALUE = 0x2;
const DWORD DEBUG_TEXT_NOSIDEEFFECTS = 0x4;
const DWORD DEBUG_TEXT_ALLOWBREAKPOINTS = 0x8;
const DWORD DEBUG_TEXT_ALLOWERRORREPORT = 0x10;
const DWORD DEBUG_TEXT_EVALUATETOCODECONTEXT = 0x20;
cpp_quote("#ifndef DISABLE_ACTIVDBG_INTERFACE_WRAPPERS")
cpp_quote("#ifdef _WIN64")
cpp_quote("#define IDebugApplication IDebugApplication64")
cpp_quote("#define IID_IDebugApplication IID_IDebugApplication64")
cpp_quote("#define IDebugThreadCall IDebugThreadCall64")
cpp_quote("#define IID_IDebugThreadCall IID_IDebugThreadCall64")
cpp_quote("#define SynchronousCallIntoThread SynchronousCallIntoThread64")
cpp_quote("#define IActiveScriptDebug IActiveScriptDebug64")
cpp_quote("#define IID_IActiveScriptDebug IID_IActiveScriptDebug64")
cpp_quote("#define IActiveScriptSiteDebug IActiveScriptSiteDebug64")
cpp_quote("#define IID_IActiveScriptSiteDebug IID_IActiveScriptSiteDebug64")
cpp_quote("#define IDebugStackFrameSnifferEx IDebugStackFrameSnifferEx64")
cpp_quote("#define IID_IDebugStackFrameSnifferEx IID_IDebugStackFrameSnifferEx64")
cpp_quote("#define EnumStackFramesEx EnumStackFramesEx64")
cpp_quote("#define IDebugDocumentHelper IDebugDocumentHelper64")
cpp_quote("#define IID_IDebugDocumentHelper IID_IDebugDocumentHelper64")
cpp_quote("#define IProcessDebugManager IProcessDebugManager64")
cpp_quote("#define IID_IProcessDebugManager IID_IProcessDebugManager64")
cpp_quote("#else")
cpp_quote("#define IDebugApplication IDebugApplication32")
cpp_quote("#define IID_IDebugApplication IID_IDebugApplication32")
cpp_quote("#define IDebugThreadCall IDebugThreadCall32")
cpp_quote("#define IID_IDebugThreadCall IID_IDebugThreadCall32")
cpp_quote("#define SynchronousCallIntoThread SynchronousCallIntoThread32")
cpp_quote("#define IActiveScriptDebug IActiveScriptDebug32")
cpp_quote("#define IID_IActiveScriptDebug IID_IActiveScriptDebug32")
cpp_quote("#define IActiveScriptSiteDebug IActiveScriptSiteDebug32")
cpp_quote("#define IID_IActiveScriptSiteDebug IID_IActiveScriptSiteDebug32")
cpp_quote("#define IDebugStackFrameSnifferEx IDebugStackFrameSnifferEx32")
cpp_quote("#define IID_IDebugStackFrameSnifferEx IID_IDebugStackFrameSnifferEx32")
cpp_quote("#define EnumStackFramesEx EnumStackFramesEx32")
cpp_quote("#define IDebugDocumentHelper IDebugDocumentHelper32")
cpp_quote("#define IID_IDebugDocumentHelper IID_IDebugDocumentHelper32")
cpp_quote("#define IProcessDebugManager IProcessDebugManager32")
cpp_quote("#define IID_IProcessDebugManager IID_IProcessDebugManager32")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("EXTERN_C const CLSID CLSID_DebugHelper;")
cpp_quote("EXTERN_C const CLSID CLSID_MachineDebugManager;")
cpp_quote("EXTERN_C const CLSID CLSID_ProcessDebugManager;")
[object, uuid (51973c10-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IActiveScriptDebug32 : IUnknown {
HRESULT GetScriptTextAttributes ([in, size_is (uNumCodeChars)] LPCOLESTR pstrCode,[in] ULONG uNumCodeChars,[in] LPCOLESTR pstrDelimiter,[in] DWORD dwFlags,[in, out, size_is (uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
HRESULT GetScriptletTextAttributes ([in, size_is (uNumCodeChars)] LPCOLESTR pstrCode,[in] ULONG uNumCodeChars,[in] LPCOLESTR pstrDelimiter,[in] DWORD dwFlags,[in, out, size_is (uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
HRESULT EnumCodeContextsOfPosition ([in] DWORD dwSourceContext,[in] ULONG uCharacterOffset,[in] ULONG uNumChars,[out] IEnumDebugCodeContexts **ppescc);
}
[object, uuid (bc437e23-f5b8-47f4-bb79-7d1ce5483b86), pointer_default (unique)]
interface IActiveScriptDebug64 : IUnknown {
HRESULT GetScriptTextAttributes ([in, size_is (uNumCodeChars)] LPCOLESTR pstrCode,[in] ULONG uNumCodeChars,[in] LPCOLESTR pstrDelimiter,[in] DWORD dwFlags,[in, out, size_is (uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
HRESULT GetScriptletTextAttributes ([in, size_is (uNumCodeChars)] LPCOLESTR pstrCode,[in] ULONG uNumCodeChars,[in] LPCOLESTR pstrDelimiter,[in] DWORD dwFlags,[in, out, size_is (uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
HRESULT EnumCodeContextsOfPosition ([in] DWORDLONG dwSourceContext,[in] ULONG uCharacterOffset,[in] ULONG uNumChars,[out] IEnumDebugCodeContexts **ppescc);
}
[object, local, uuid (51973c11-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IActiveScriptSiteDebug32 : IUnknown {
HRESULT GetDocumentContextFromPosition ([in] DWORD dwSourceContext,[in] ULONG uCharacterOffset,[in] ULONG uNumChars,[out] IDebugDocumentContext **ppsc);
HRESULT GetApplication ([out] IDebugApplication32 **ppda);
HRESULT GetRootApplicationNode ([out] IDebugApplicationNode **ppdanRoot);
HRESULT OnScriptErrorDebug ([in] IActiveScriptErrorDebug *pErrorDebug,[out] BOOL *pfEnterDebugger,[out] BOOL *pfCallOnScriptErrorWhenContinuing);
}
[object, local, uuid (d6b96b0a-7463-402c-92ac-89984226942f), pointer_default (unique)]
interface IActiveScriptSiteDebug64 : IUnknown {
HRESULT GetDocumentContextFromPosition ([in] DWORDLONG dwSourceContext,[in] ULONG uCharacterOffset,[in] ULONG uNumChars,[out] IDebugDocumentContext **ppsc);
HRESULT GetApplication ([out] IDebugApplication64 **ppda);
HRESULT GetRootApplicationNode ([out] IDebugApplicationNode **ppdanRoot);
HRESULT OnScriptErrorDebug ([in] IActiveScriptErrorDebug *pErrorDebug,[out] BOOL *pfEnterDebugger,[out] BOOL *pfCallOnScriptErrorWhenContinuing);
}
[object, local, uuid (BB722CCB-6ad2-41c6-b780-af9c03ee69f5), pointer_default (unique)]
interface IActiveScriptSiteDebugEx : IUnknown {
HRESULT OnCanNotJITScriptErrorDebug ([in] IActiveScriptErrorDebug *pErrorDebug,[out] BOOL *pfCallOnScriptErrorWhenContinuing);
}
[object, uuid (51973c12-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IActiveScriptErrorDebug : IActiveScriptError {
HRESULT GetDocumentContext ([out] IDebugDocumentContext **ppssc);
HRESULT GetStackFrame ([out] IDebugStackFrame **ppdsf);
}
[object, uuid (51973c13-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugCodeContext : IUnknown {
HRESULT GetDocumentContext ([out] IDebugDocumentContext **ppsc);
HRESULT SetBreakPoint ([in] BREAKPOINT_STATE bps);
}
[object, uuid (51973c14-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugExpression : IUnknown {
HRESULT Start ([in] IDebugExpressionCallBack *pdecb);
HRESULT Abort (void);
HRESULT QueryIsComplete (void);
HRESULT GetResultAsString ([out] HRESULT *phrResult,[out] BSTR *pbstrResult);
HRESULT GetResultAsDebugProperty ([out] HRESULT *phrResult,[out] IDebugProperty **ppdp);
}
[object, uuid (51973c15-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugExpressionContext : IUnknown {
HRESULT ParseLanguageText ([in] LPCOLESTR pstrCode,[in] UINT nRadix,[in] LPCOLESTR pstrDelimiter,[in] DWORD dwFlags,[out] IDebugExpression **ppe);
HRESULT GetLanguageInfo ([out] BSTR *pbstrLanguageName,[out] GUID *pLanguageID);
}
[object, uuid (51973c16-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugExpressionCallBack : IUnknown {
HRESULT onComplete (void);
}
[object, uuid (51973c17-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugStackFrame : IUnknown {
HRESULT GetCodeContext ([out] IDebugCodeContext **ppcc);
HRESULT GetDescriptionString ([in] BOOL fLong,[out] BSTR *pbstrDescription);
HRESULT GetLanguageString ([in] BOOL fLong,[out] BSTR *pbstrLanguage);
HRESULT GetThread ([out] IDebugApplicationThread **ppat);
HRESULT GetDebugProperty ([out] IDebugProperty **ppDebugProp);
}
[object, uuid (51973c18-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugStackFrameSniffer : IUnknown {
HRESULT EnumStackFrames ([out] IEnumDebugStackFrames **ppedsf);
}
[object, uuid (51973c19-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugStackFrameSnifferEx32 : IDebugStackFrameSniffer {
HRESULT EnumStackFramesEx32 ([in] DWORD dwSpMin,[out] IEnumDebugStackFrames **ppedsf);
};
[object, uuid (8cd12af4-49c1-4d52-8d8a-c146f47581aa), pointer_default (unique)]
interface IDebugStackFrameSnifferEx64 : IDebugStackFrameSniffer {
HRESULT EnumStackFramesEx64 ([in] DWORDLONG dwSpMin,[out] IEnumDebugStackFrames64 **ppedsf);
};
[object, local, uuid (51973c1a-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugSyncOperation : IUnknown {
HRESULT GetTargetThread ([out] IDebugApplicationThread **ppatTarget);
HRESULT Execute ([out] IUnknown **ppunkResult);
HRESULT InProgressAbort (void);
}
[object, local, uuid (51973c1b-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugAsyncOperation : IUnknown {
HRESULT GetSyncDebugOperation ([out] IDebugSyncOperation **ppsdo);
HRESULT Start (IDebugAsyncOperationCallBack *padocb);
HRESULT Abort (void);
HRESULT QueryIsComplete (void);
HRESULT GetResult ([out] HRESULT *phrResult,[out] IUnknown **ppunkResult);
}
[object, local, uuid (51973c1c-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugAsyncOperationCallBack : IUnknown {
HRESULT onComplete (void);
}
[object, uuid (51973c1d-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IEnumDebugCodeContexts : IUnknown {
[local] HRESULT __stdcall Next ([in] ULONG celt,[out] IDebugCodeContext **pscc,[out] ULONG *pceltFetched);
[call_as (Next)] HRESULT __stdcall RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]IDebugCodeContext **pscc,[out] ULONG *pceltFetched);
HRESULT Skip ([in] ULONG celt);
HRESULT Reset (void);
HRESULT Clone ([out] IEnumDebugCodeContexts **ppescc);
}
[object, uuid (51973c1e-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IEnumDebugStackFrames : IUnknown {
[local] HRESULT __stdcall Next ([in] ULONG celt,[out] DebugStackFrameDescriptor *prgdsfd,[out] ULONG *pceltFetched);
[call_as (Next)] HRESULT __stdcall RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]DebugStackFrameDescriptor *prgdsfd,[out] ULONG *pceltFetched);
HRESULT Skip ([in] ULONG celt);
HRESULT Reset (void);
HRESULT Clone ([out] IEnumDebugStackFrames **ppedsf);
}
[object, uuid (0dc38853-c1b0-4176-a984-b298361027af), pointer_default (unique)]
interface IEnumDebugStackFrames64 : IEnumDebugStackFrames {
[local] HRESULT __stdcall Next64 ([in] ULONG celt,[out] DebugStackFrameDescriptor64 *prgdsfd,[out] ULONG *pceltFetched);
[call_as (Next64)] HRESULT __stdcall RemoteNext64 ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]DebugStackFrameDescriptor64 *prgdsfd,[out] ULONG *pceltFetched);
}
[object, uuid (51973c1f-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugDocumentInfo : IUnknown {
HRESULT GetName ([in] DOCUMENTNAMETYPE dnt,[out] BSTR *pbstrName);
HRESULT GetDocumentClassId ([out] CLSID *pclsidDocument);
}
[object, uuid (51973c20-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugDocumentProvider : IDebugDocumentInfo {
HRESULT GetDocument ([out] IDebugDocument **ppssd);
}
[object, uuid (51973c21-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugDocument : IDebugDocumentInfo {
}
[object, uuid (51973c22-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugDocumentText : IDebugDocument {
HRESULT GetDocumentAttributes ([out] TEXT_DOC_ATTR *ptextdocattr);
HRESULT GetSize ([out] ULONG *pcNumLines,[out] ULONG *pcNumChars);
HRESULT GetPositionOfLine ([in] ULONG cLineNumber,[out] ULONG *pcCharacterPosition);
HRESULT GetLineOfPosition ([in] ULONG cCharacterPosition,[out] ULONG *pcLineNumber,[out] ULONG *pcCharacterOffsetInLine);
HRESULT GetText ([in] ULONG cCharacterPosition,[in, out, length_is (*pcNumChars), size_is (cMaxChars)] WCHAR *pcharText,[in, out, length_is (*pcNumChars), size_is (cMaxChars), ptr] SOURCE_TEXT_ATTR *pstaTextAttr,[in, out] ULONG *pcNumChars,[in] ULONG cMaxChars);
HRESULT GetPositionOfContext ([in] IDebugDocumentContext *psc,[out] ULONG *pcCharacterPosition,[out] ULONG *cNumChars);
HRESULT GetContextOfPosition ([in] ULONG cCharacterPosition,[in] ULONG cNumChars,[out] IDebugDocumentContext **ppsc);
}
[object, uuid (51973c23-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugDocumentTextEvents : IUnknown {
HRESULT onDestroy (void);
HRESULT onInsertText ([in] ULONG cCharacterPosition,[in] ULONG cNumToInsert);
HRESULT onRemoveText ([in] ULONG cCharacterPosition,[in] ULONG cNumToRemove);
HRESULT onReplaceText ([in] ULONG cCharacterPosition,[in] ULONG cNumToReplace);
HRESULT onUpdateTextAttributes ([in] ULONG cCharacterPosition,[in] ULONG cNumToUpdate);
HRESULT onUpdateDocumentAttributes ([in] TEXT_DOC_ATTR textdocattr);
}
[object, uuid (51973c24-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugDocumentTextAuthor : IDebugDocumentText {
HRESULT InsertText ([in] ULONG cCharacterPosition,[in] ULONG cNumToInsert,[in, size_is (cNumToInsert)]OLECHAR pcharText[]);
HRESULT RemoveText ([in] ULONG cCharacterPosition,[in] ULONG cNumToRemove);
HRESULT ReplaceText ([in] ULONG cCharacterPosition,[in] ULONG cNumToReplace,[in, size_is (cNumToReplace)]OLECHAR pcharText[]);
}
[object, uuid (51973c25-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugDocumentTextExternalAuthor : IUnknown {
HRESULT GetPathName ([out] BSTR *pbstrLongName,[out] BOOL *pfIsOriginalFile);
HRESULT GetFileName ([out] BSTR *pbstrShortName);
HRESULT NotifyChanged ();
}
[object, uuid (51973c26-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugDocumentHelper32 : IUnknown {
HRESULT Init ([in] IDebugApplication32 *pda,[in, string] LPCOLESTR pszShortName,[in, string] LPCOLESTR pszLongName,[in] TEXT_DOC_ATTR docAttr);
HRESULT Attach ([in] IDebugDocumentHelper32 *pddhParent);
HRESULT Detach ();
HRESULT AddUnicodeText ([in, string] LPCOLESTR pszText);
HRESULT AddDBCSText ([in, string] LPCSTR pszText);
HRESULT SetDebugDocumentHost ([in] IDebugDocumentHost *pddh);
HRESULT AddDeferredText ([in] ULONG cChars,[in] DWORD dwTextStartCookie);
HRESULT DefineScriptBlock ([in] ULONG ulCharOffset,[in] ULONG cChars,[in] IActiveScript *pas,[in] BOOL fScriptlet,[out] DWORD *pdwSourceContext);
HRESULT SetDefaultTextAttr (SOURCE_TEXT_ATTR staTextAttr);
HRESULT SetTextAttributes ([in] ULONG ulCharOffset,[in] ULONG cChars,[in, length_is (cChars), size_is (cChars)]SOURCE_TEXT_ATTR *pstaTextAttr);
HRESULT SetLongName ([in, string] LPCOLESTR pszLongName);
HRESULT SetShortName ([in, string] LPCOLESTR pszShortName);
HRESULT SetDocumentAttr ([in] TEXT_DOC_ATTR pszAttributes);
HRESULT GetDebugApplicationNode ([out] IDebugApplicationNode **ppdan);
HRESULT GetScriptBlockInfo ([in] DWORD dwSourceContext,[out] IActiveScript **ppasd,[out] ULONG *piCharPos,[out] ULONG *pcChars);
HRESULT CreateDebugDocumentContext ([in] ULONG iCharPos,[in] ULONG cChars,[out] IDebugDocumentContext **ppddc);
HRESULT BringDocumentToTop ();
HRESULT BringDocumentContextToTop (IDebugDocumentContext *pddc);
};
[object, uuid (c4c7363c-20fd-47f9-bd82-4855e0150871), pointer_default (unique)]
interface IDebugDocumentHelper64 : IUnknown {
HRESULT Init ([in] IDebugApplication64 *pda,[in, string] LPCOLESTR pszShortName,[in, string] LPCOLESTR pszLongName,[in] TEXT_DOC_ATTR docAttr);
HRESULT Attach ([in] IDebugDocumentHelper64 *pddhParent);
HRESULT Detach ();
HRESULT AddUnicodeText ([in, string] LPCOLESTR pszText);
HRESULT AddDBCSText ([in, string] LPCSTR pszText);
HRESULT SetDebugDocumentHost ([in] IDebugDocumentHost *pddh);
HRESULT AddDeferredText ([in] ULONG cChars,[in] DWORD dwTextStartCookie);
HRESULT DefineScriptBlock ([in] ULONG ulCharOffset,[in] ULONG cChars,[in] IActiveScript *pas,[in] BOOL fScriptlet,[out] DWORDLONG *pdwSourceContext);
HRESULT SetDefaultTextAttr (SOURCE_TEXT_ATTR staTextAttr);
HRESULT SetTextAttributes ([in] ULONG ulCharOffset,[in] ULONG cChars,[in, length_is (cChars), size_is (cChars)]SOURCE_TEXT_ATTR *pstaTextAttr);
HRESULT SetLongName ([in, string] LPCOLESTR pszLongName);
HRESULT SetShortName ([in, string] LPCOLESTR pszShortName);
HRESULT SetDocumentAttr ([in] TEXT_DOC_ATTR pszAttributes);
HRESULT GetDebugApplicationNode ([out] IDebugApplicationNode **ppdan);
HRESULT GetScriptBlockInfo ([in] DWORDLONG dwSourceContext,[out] IActiveScript **ppasd,[out] ULONG *piCharPos,[out] ULONG *pcChars);
HRESULT CreateDebugDocumentContext ([in] ULONG iCharPos,[in] ULONG cChars,[out] IDebugDocumentContext **ppddc);
HRESULT BringDocumentToTop ();
HRESULT BringDocumentContextToTop (IDebugDocumentContext *pddc);
};
[object, uuid (51973c27-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugDocumentHost : IUnknown {
HRESULT GetDeferredText ([in] DWORD dwTextStartCookie,[in, out, length_is (*pcNumChars), size_is (cMaxChars)] WCHAR *pcharText,[in, out, length_is (*pcNumChars), size_is (cMaxChars)] SOURCE_TEXT_ATTR *pstaTextAttr,[in, out] ULONG *pcNumChars,[in] ULONG cMaxChars);
HRESULT GetScriptTextAttributes ([in, size_is (uNumCodeChars)] LPCOLESTR pstrCode,[in] ULONG uNumCodeChars,[in] LPCOLESTR pstrDelimiter,[in] DWORD dwFlags,[in, out, size_is (uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
HRESULT OnCreateDocumentContext ([out] IUnknown **ppunkOuter);
HRESULT GetPathName ([out] BSTR *pbstrLongName,[out] BOOL *pfIsOriginalFile);
HRESULT GetFileName ([out] BSTR *pbstrShortName);
HRESULT NotifyChanged ();
};
[object, uuid (51973c28-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugDocumentContext : IUnknown {
HRESULT GetDocument ([out] IDebugDocument **ppsd);
HRESULT EnumCodeContexts ([out] IEnumDebugCodeContexts **ppescc);
}
[object, uuid (51973c29-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugSessionProvider : IUnknown {
HRESULT StartDebugSession ([in] IRemoteDebugApplication *pda);
};
[object, uuid (51973c2a-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IApplicationDebugger : IUnknown {
HRESULT QueryAlive (void);
HRESULT CreateInstanceAtDebugger ([in] REFCLSID rclsid,[in] IUnknown *pUnkOuter,[in] DWORD dwClsContext,[in] REFIID riid,[out, iid_is (riid)] IUnknown **ppvObject);
HRESULT onDebugOutput ([in] LPCOLESTR pstr);
HRESULT onHandleBreakPoint ([in] IRemoteDebugApplicationThread *prpt,[in] BREAKREASON br,[in] IActiveScriptErrorDebug *pError);
HRESULT onClose (void);
HRESULT onDebuggerEvent ([in] REFIID riid,[in] IUnknown *punk);
};
[object, uuid (51973c2b-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IApplicationDebuggerUI : IUnknown {
HRESULT BringDocumentToTop ([in] IDebugDocumentText *pddt);
HRESULT BringDocumentContextToTop ([in] IDebugDocumentContext *pddc);
};
[object, uuid (51973c2c-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IMachineDebugManager : IUnknown {
HRESULT AddApplication ([in] IRemoteDebugApplication *pda,[out] DWORD *pdwAppCookie);
HRESULT RemoveApplication ([in] DWORD dwAppCookie);
HRESULT EnumApplications ([out] IEnumRemoteDebugApplications **ppeda);
};
[object, uuid (51973c2d-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IMachineDebugManagerCookie : IUnknown {
HRESULT AddApplication ([in] IRemoteDebugApplication *pda,[in] DWORD dwDebugAppCookie,[out] DWORD *pdwAppCookie);
HRESULT RemoveApplication ([in] DWORD dwDebugAppCookie,[in] DWORD dwAppCookie);
HRESULT EnumApplications ([out] IEnumRemoteDebugApplications **ppeda);
};
[object, uuid (51973c2e-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IMachineDebugManagerEvents : IUnknown {
HRESULT onAddApplication ([in] IRemoteDebugApplication *pda,[in] DWORD dwAppCookie);
HRESULT onRemoveApplication ([in] IRemoteDebugApplication *pda,[in] DWORD dwAppCookie);
};
[object, local, uuid (51973c2f-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IProcessDebugManager32 : IUnknown {
HRESULT CreateApplication ([out] IDebugApplication32 **ppda);
HRESULT GetDefaultApplication ([out] IDebugApplication32 **ppda);
HRESULT AddApplication ([in] IDebugApplication32 *pda,[out] DWORD *pdwAppCookie);
HRESULT RemoveApplication ([in] DWORD dwAppCookie);
HRESULT CreateDebugDocumentHelper ([in] IUnknown *punkOuter,[out] IDebugDocumentHelper32 **pddh);
};
[object, local, uuid (56b9fc1c-63a9-4cc1-ac21-087d69a17fab), pointer_default (unique)]
interface IProcessDebugManager64 : IUnknown {
HRESULT CreateApplication ([out] IDebugApplication64 **ppda);
HRESULT GetDefaultApplication ([out] IDebugApplication64 **ppda);
HRESULT AddApplication ([in] IDebugApplication64 *pda,[out] DWORD *pdwAppCookie);
HRESULT RemoveApplication ([in] DWORD dwAppCookie);
HRESULT CreateDebugDocumentHelper ([in] IUnknown *punkOuter,[out] IDebugDocumentHelper64 **pddh);
};
[object, uuid (51973c30-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IRemoteDebugApplication : IUnknown {
HRESULT ResumeFromBreakPoint ([in] IRemoteDebugApplicationThread *prptFocus,[in] BREAKRESUMEACTION bra,[in] ERRORRESUMEACTION era);
HRESULT CauseBreak (void);
HRESULT ConnectDebugger ([in] IApplicationDebugger *pad);
HRESULT DisconnectDebugger (void);
HRESULT GetDebugger ([out] IApplicationDebugger **pad);
HRESULT CreateInstanceAtApplication ([in] REFCLSID rclsid,[in] IUnknown *pUnkOuter,[in] DWORD dwClsContext,[in] REFIID riid,[out, iid_is (riid)] IUnknown **ppvObject);
HRESULT QueryAlive (void);
HRESULT EnumThreads ([out] IEnumRemoteDebugApplicationThreads **pperdat);
HRESULT GetName ([out] BSTR *pbstrName);
HRESULT GetRootNode ([out] IDebugApplicationNode **ppdanRoot);
HRESULT EnumGlobalExpressionContexts ([out] IEnumDebugExpressionContexts **ppedec);
};
[object, local, uuid (51973c32-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugApplication32 : IRemoteDebugApplication {
HRESULT SetName ([in] LPCOLESTR pstrName);
HRESULT StepOutComplete (void);
HRESULT DebugOutput ([in] LPCOLESTR pstr);
HRESULT StartDebugSession (void);
HRESULT HandleBreakPoint ([in] BREAKREASON br,[out] BREAKRESUMEACTION *pbra);
HRESULT Close (void);
HRESULT GetBreakFlags ([out] APPBREAKFLAGS *pabf,[out] IRemoteDebugApplicationThread **pprdatSteppingThread);
HRESULT GetCurrentThread ([out] IDebugApplicationThread **pat);
HRESULT CreateAsyncDebugOperation ([in] IDebugSyncOperation *psdo,[out] IDebugAsyncOperation **ppado);
HRESULT AddStackFrameSniffer ([in] IDebugStackFrameSniffer *pdsfs,[out] DWORD *pdwCookie);
HRESULT RemoveStackFrameSniffer ([in] DWORD dwCookie);
HRESULT QueryCurrentThreadIsDebuggerThread (void);
HRESULT SynchronousCallInDebuggerThread ([in] IDebugThreadCall32 *pptc,[in] DWORD dwParam1,[in] DWORD dwParam2,[in] DWORD dwParam3);
HRESULT CreateApplicationNode ([out] IDebugApplicationNode **ppdanNew);
HRESULT FireDebuggerEvent ([in] REFGUID riid,[in] IUnknown *punk);
HRESULT HandleRuntimeError ([in] IActiveScriptErrorDebug *pErrorDebug,[in] IActiveScriptSite *pScriptSite,[out] BREAKRESUMEACTION *pbra,[out] ERRORRESUMEACTION *perra,[out] BOOL *pfCallOnScriptError);
BOOL FCanJitDebug ();
BOOL FIsAutoJitDebugEnabled ();
HRESULT AddGlobalExpressionContextProvider ([in] IProvideExpressionContexts *pdsfs,[out] DWORD *pdwCookie);
HRESULT RemoveGlobalExpressionContextProvider ([in] DWORD dwCookie);
}
[object, local, uuid (4dedc754-04c7-4f10-9e60-16a390fe6e62), pointer_default (unique)]
interface IDebugApplication64 : IRemoteDebugApplication {
HRESULT SetName ([in] LPCOLESTR pstrName);
HRESULT StepOutComplete (void);
HRESULT DebugOutput ([in] LPCOLESTR pstr);
HRESULT StartDebugSession (void);
HRESULT HandleBreakPoint ([in] BREAKREASON br,[out] BREAKRESUMEACTION *pbra);
HRESULT Close (void);
HRESULT GetBreakFlags ([out] APPBREAKFLAGS *pabf,[out] IRemoteDebugApplicationThread **pprdatSteppingThread);
HRESULT GetCurrentThread ([out] IDebugApplicationThread **pat);
HRESULT CreateAsyncDebugOperation ([in] IDebugSyncOperation *psdo,[out] IDebugAsyncOperation **ppado);
HRESULT AddStackFrameSniffer ([in] IDebugStackFrameSniffer *pdsfs,[out] DWORD *pdwCookie);
HRESULT RemoveStackFrameSniffer ([in] DWORD dwCookie);
HRESULT QueryCurrentThreadIsDebuggerThread (void);
HRESULT SynchronousCallInDebuggerThread ([in] IDebugThreadCall64 *pptc,[in] DWORDLONG dwParam1,[in] DWORDLONG dwParam2,[in] DWORDLONG dwParam3);
HRESULT CreateApplicationNode ([out] IDebugApplicationNode **ppdanNew);
HRESULT FireDebuggerEvent ([in] REFGUID riid,[in] IUnknown *punk);
HRESULT HandleRuntimeError ([in] IActiveScriptErrorDebug *pErrorDebug,[in] IActiveScriptSite *pScriptSite,[out] BREAKRESUMEACTION *pbra,[out] ERRORRESUMEACTION *perra,[out] BOOL *pfCallOnScriptError);
BOOL FCanJitDebug ();
BOOL FIsAutoJitDebugEnabled ();
HRESULT AddGlobalExpressionContextProvider ([in] IProvideExpressionContexts *pdsfs,[out] DWORDLONG *pdwCookie);
HRESULT RemoveGlobalExpressionContextProvider ([in] DWORDLONG dwCookie);
};
[object, uuid (51973c33-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IRemoteDebugApplicationEvents : IUnknown {
HRESULT OnConnectDebugger ([in] IApplicationDebugger *pad);
HRESULT OnDisconnectDebugger (void);
HRESULT OnSetName ([in] LPCOLESTR pstrName);
HRESULT OnDebugOutput ([in] LPCOLESTR pstr);
HRESULT OnClose (void);
HRESULT OnEnterBreakPoint ([in] IRemoteDebugApplicationThread *prdat);
HRESULT OnLeaveBreakPoint ([in] IRemoteDebugApplicationThread *prdat);
HRESULT OnCreateThread ([in] IRemoteDebugApplicationThread *prdat);
HRESULT OnDestroyThread ([in] IRemoteDebugApplicationThread *prdat);
HRESULT OnBreakFlagChange ([in] APPBREAKFLAGS abf,[in] IRemoteDebugApplicationThread *prdatSteppingThread);
};
[object, uuid (51973c34-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugApplicationNode : IDebugDocumentProvider {
HRESULT EnumChildren ([out] IEnumDebugApplicationNodes **pperddp);
HRESULT GetParent ([out] IDebugApplicationNode **pprddp);
HRESULT SetDocumentProvider ([in] IDebugDocumentProvider *pddp);
HRESULT Close (void);
HRESULT Attach ([in] IDebugApplicationNode *pdanParent);
HRESULT Detach (void);
}
[object, uuid (51973c35-cb0c-11d0-b5c9-00a0244a0e7a), async_uuid (a2e3aa3b-aa8d-4ebf-84cd-648b737b8c13), pointer_default (unique)]
interface IDebugApplicationNodeEvents : IUnknown {
HRESULT onAddChild ([in] IDebugApplicationNode *prddpChild);
HRESULT onRemoveChild ([in] IDebugApplicationNode *prddpChild);
HRESULT onDetach (void);
HRESULT onAttach ([in] IDebugApplicationNode *prddpParent);
}
[object, local, uuid (51973c36-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugThreadCall32 : IUnknown {
HRESULT ThreadCallHandler ([in] DWORD dwParam1,[in] DWORD dwParam2,[in] DWORD dwParam3);
}
[object, local, uuid (cb3fa335-e979-42fd-9fcf-a7546a0f3905), pointer_default (unique)]
interface IDebugThreadCall64 : IUnknown {
HRESULT ThreadCallHandler ([in] DWORDLONG dwParam1,[in] DWORDLONG dwParam2,[in] DWORDLONG dwParam3);
}
[object, uuid (51973c37-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IRemoteDebugApplicationThread : IUnknown {
typedef DWORD THREAD_STATE;
const THREAD_STATE THREAD_STATE_RUNNING = 0x1;
const THREAD_STATE THREAD_STATE_SUSPENDED = 0x2;
const THREAD_STATE THREAD_BLOCKED = 0x4;
const THREAD_STATE THREAD_OUT_OF_CONTEXT = 0x8;
HRESULT GetSystemThreadId ([out] DWORD *dwThreadId);
HRESULT GetApplication ([out] IRemoteDebugApplication **pprda);
HRESULT EnumStackFrames ([out] IEnumDebugStackFrames **ppedsf);
HRESULT GetDescription ([out] BSTR *pbstrDescription,[out] BSTR *pbstrState);
HRESULT SetNextStatement ([in] IDebugStackFrame *pStackFrame,[in] IDebugCodeContext *pCodeContext);
HRESULT GetState ([out] DWORD *pState);
HRESULT Suspend ([out] DWORD *pdwCount);
HRESULT Resume ([out] DWORD *pdwCount);
HRESULT GetSuspendCount ([out] DWORD *pdwCount);
}
[object, local, uuid (51973c38-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugApplicationThread : IRemoteDebugApplicationThread {
HRESULT SynchronousCallIntoThread32 ([in] IDebugThreadCall32 *pstcb,[in] DWORD dwParam1,[in] DWORD dwParam2,[in] DWORD dwParam3);
HRESULT QueryIsCurrentThread (void);
HRESULT QueryIsDebuggerThread (void);
HRESULT SetDescription ([in] LPCOLESTR pstrDescription);
HRESULT SetStateString ([in] LPCOLESTR pstrState);
}
[object, local, uuid (9dac5886-dbad-456d-9dee-5dec39ab3dda), pointer_default (unique)]
interface IDebugApplicationThread64 : IDebugApplicationThread {
HRESULT SynchronousCallIntoThread64 ([in] IDebugThreadCall64 *pstcb,[in] DWORDLONG dwParam1,[in] DWORDLONG dwParam2,[in] DWORDLONG dwParam3);
}
[object, local, uuid (51973c39-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugCookie : IUnknown {
HRESULT SetDebugCookie ([in]DWORD dwDebugAppCookie);
};
[object, uuid (51973c3a-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IEnumDebugApplicationNodes : IUnknown {
[local] HRESULT __stdcall Next ([in] ULONG celt,[out] IDebugApplicationNode **pprddp,[out] ULONG *pceltFetched);
[call_as (Next)] HRESULT __stdcall RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]IDebugApplicationNode **pprddp,[out] ULONG *pceltFetched);
HRESULT Skip ([in] ULONG celt);
HRESULT Reset (void);
HRESULT Clone ([out] IEnumDebugApplicationNodes **pperddp);
};
[object, uuid (51973c3b-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IEnumRemoteDebugApplications : IUnknown {
[local] HRESULT __stdcall Next ([in] ULONG celt,[out] IRemoteDebugApplication **ppda,[out] ULONG *pceltFetched);
[call_as (Next)] HRESULT __stdcall RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]IRemoteDebugApplication **ppda,[out] ULONG *pceltFetched);
HRESULT Skip ([in] ULONG celt);
HRESULT Reset (void);
HRESULT Clone ([out] IEnumRemoteDebugApplications **ppessd);
}
[object, uuid (51973c3c-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IEnumRemoteDebugApplicationThreads : IUnknown {
[local] HRESULT __stdcall Next ([in] ULONG celt,[out] IRemoteDebugApplicationThread **pprdat,[out] ULONG *pceltFetched);
[call_as (Next)] HRESULT __stdcall RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]IRemoteDebugApplicationThread **ppdat,[out] ULONG *pceltFetched);
HRESULT Skip ([in] ULONG celt);
HRESULT Reset (void);
HRESULT Clone ([out] IEnumRemoteDebugApplicationThreads **pperdat);
}
[object, local, uuid (51973c05-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugFormatter : IUnknown {
HRESULT GetStringForVariant ([in] VARIANT *pvar,[in] ULONG nRadix,[out] BSTR *pbstrValue);
HRESULT GetVariantForString ([in] LPCOLESTR pwstrValue,[out] VARIANT *pvar);
HRESULT GetStringForVarType ([in] VARTYPE vt,[in] TYPEDESC *ptdescArrayType,[out] BSTR *pbstr);
}
[object, local, uuid (51973c3e-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface ISimpleConnectionPoint : IUnknown {
HRESULT GetEventCount ([out] ULONG *pulCount);
HRESULT DescribeEvents ([in] ULONG iEvent,[in] ULONG cEvents,[out, size_is (cEvents), length_is (*pcEventsFetched)]DISPID *prgid,[out, size_is (cEvents), length_is (*pcEventsFetched)]BSTR *prgbstr,[out] ULONG *pcEventsFetched);
HRESULT Advise ([in] IDispatch *pdisp,[out] DWORD *pdwCookie);
HRESULT Unadvise ([in] DWORD dwCookie);
};
[object, local, uuid (51973c3f-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IDebugHelper : IUnknown {
HRESULT CreatePropertyBrowser ([in] VARIANT *pvar,[in] LPCOLESTR bstrName,[in] IDebugApplicationThread *pdat,[out] IDebugProperty **ppdob);
HRESULT CreatePropertyBrowserEx ([in] VARIANT *pvar,[in] LPCOLESTR bstrName,[in] IDebugApplicationThread *pdat,[in] IDebugFormatter *pdf,[out] IDebugProperty **ppdob);
HRESULT CreateSimpleConnectionPoint ([in] IDispatch *pdisp,[out] ISimpleConnectionPoint **ppscp);
};
[object, uuid (51973c40-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IEnumDebugExpressionContexts : IUnknown {
[local] HRESULT __stdcall Next ([in] ULONG celt,[out] IDebugExpressionContext **ppdec,[out] ULONG *pceltFetched);
[call_as (Next)] HRESULT __stdcall RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]IDebugExpressionContext **pprgdec,[out] ULONG *pceltFetched);
HRESULT Skip ([in] ULONG celt);
HRESULT Reset (void);
HRESULT Clone ([out] IEnumDebugExpressionContexts **ppedec);
}
[object, uuid (51973c41-cb0c-11d0-b5c9-00a0244a0e7a), pointer_default (unique)]
interface IProvideExpressionContexts : IUnknown {
HRESULT EnumExpressionContexts ([out] IEnumDebugExpressionContexts **ppedec);
}
[uuid (78a51821-51f4-11d0-8f20-00805f2cd064), version (1.0)]
library ProcessDebugManagerLib {
importlib ("stdole2.tlb");
interface IActiveScriptDebug32;
interface IActiveScriptDebug64;
interface IActiveScriptErrorDebug;
interface IActiveScriptSiteDebug32;
interface IActiveScriptSiteDebug64;
interface IActiveScriptSiteDebugEx;
interface IApplicationDebugger;
interface IApplicationDebuggerUI;
interface IDebugApplication32;
interface IDebugApplication64;
interface IDebugApplicationNode;
interface IDebugApplicationNodeEvents;
interface IDebugApplicationThread;
interface IDebugAsyncOperation;
interface IDebugAsyncOperationCallBack;
interface IDebugCodeContext;
interface IDebugCookie;
interface IDebugDocument;
interface IDebugDocumentContext;
interface IDebugDocumentHelper32;
interface IDebugDocumentHelper64;
interface IDebugDocumentHost;
interface IDebugDocumentInfo;
interface IDebugDocumentProvider;
interface IDebugDocumentText;
interface IDebugDocumentTextAuthor;
interface IDebugDocumentTextEvents;
interface IDebugDocumentTextExternalAuthor;
interface IDebugExpression;
interface IDebugExpressionCallBack;
interface IDebugExpressionContext;
interface IDebugFormatter;
interface IDebugHelper;
interface IDebugSessionProvider;
interface IDebugStackFrame;
interface IDebugStackFrameSniffer;
interface IDebugStackFrameSnifferEx32;
interface IDebugStackFrameSnifferEx64;
interface IDebugSyncOperation;
interface IDebugThreadCall32;
interface IDebugThreadCall64;
interface IEnumDebugApplicationNodes;
interface IEnumDebugCodeContexts;
interface IEnumDebugExpressionContexts;
interface IEnumDebugStackFrames;
interface IEnumDebugStackFrames64;
interface IEnumRemoteDebugApplications;
interface IEnumRemoteDebugApplicationThreads;
interface IProcessDebugManager32;
interface IProcessDebugManager64;
interface IProvideExpressionContexts;
interface IMachineDebugManager;
interface IMachineDebugManagerCookie;
interface IMachineDebugManagerEvents;
interface IRemoteDebugApplication;
interface IRemoteDebugApplicationEvents;
interface IRemoteDebugApplicationThread;
interface ISimpleConnectionPoint;
[uuid (78a51822-51f4-11d0-8f20-00805f2cd064)]
coclass ProcessDebugManager {
#ifdef _WIN64
[default] interface IProcessDebugManager64;
#else
[default] interface IProcessDebugManager32;
#endif
};
[uuid (0bfcc060-8c1d-11d0-ACCD-00aa0060275c)]
coclass DebugHelper {
[default] interface IDebugHelper;
};
cpp_quote("EXTERN_C const CLSID CLSID_CDebugDocumentHelper;")
[uuid (83b8bca6-687c-11d0-A405-00aa0060275c)]
coclass CDebugDocumentHelper {
#ifdef _WIN64
[default] interface IDebugDocumentHelper64;
#else
[default] interface IDebugDocumentHelper32;
#endif
interface IDebugDocumentProvider;
interface IDebugDocument;
interface IDebugDocumentText;
interface IDebugDocumentTextAuthor;
interface IConnectionPointContainer;
[default, source] interface IDebugDocumentTextEvents;
};
cpp_quote("#ifdef DEBUG")
cpp_quote("#define MachineDebugManger MachineDebugManager_DEBUG")
cpp_quote("#define CLSID_MachineDebugManager CLSID_MachineDebugManager_DEBUG")
cpp_quote("#else")
cpp_quote("#define MachineDebugManger MachineDebugManager_RETAIL")
cpp_quote("#define CLSID_MachineDebugManager CLSID_MachineDebugManager_RETAIL")
cpp_quote("#endif")
[uuid (0c0a3666-30c9-11d0-8f20-00805f2cd064)]
coclass MachineDebugManager_RETAIL {
[default] interface IMachineDebugManager;
};
[uuid (49769cec-3a55-4bb0-B697-88fede77e8ea)]
coclass MachineDebugManager_DEBUG {
[default] interface IMachineDebugManager;
};
[uuid (834128a2-51f4-11d0-8f20-00805f2cd064)]
coclass DefaultDebugSessionProvider {
[default] interface IDebugSessionProvider;
};
};
cpp_quote("#endif")
cpp_quote("#endif")