using System.Collections.Generic;
public static void Main()
Console.WriteLine("Hello World");
public interface IProcessDebugManager
IDebugApplication CreateApplication(object engine);
void AddApplication(IDebugApplication pda);
void RemoveApplication(IDebugApplication dwApp);
public interface IRemoteDebugApplication
void ConnectDebugger(IApplicationDebugger pad);
void DisconnectDebugger();
void EnumGlobalExpressionContexts();
void ResumeFromBreakPoint(IRemoteDebugApplicationThread prptFocus, BREAKRESUME_ACTION bra, ERRORRESUME_ACTION era);
public interface IApplicationDebugger
void OnDebugOutput(string pstr);
void OnHandleBreakPoint(IRemoteDebugApplicationThread prpt, BREAKREASON br, IActiveScriptErrorDebug pError);
public interface IDebugSessionProvider
IRemoteDebugApplication StartDebugSession();
public delegate void IDebugAsyncOperation(object state);
public interface IDebugApplication : IRemoteDebugApplication
void StartDebugSession();
void HandleBreakPoint(BREAKREASON br, out BREAKRESUME_ACTION pbra);
APPBREAKFLAGS GetBreakFlags(out IRemoteDebugApplicationThread pprdatSteppingThread);
IDebugApplicationThread GetCurrentThread();
void CreateAsyncDebugOperation();
void AddStackFrameSniffer(IDebugStackFrameSniffer pdsfs);
void RemoveStackFrameSniffer(IDebugStackFrameSniffer pdsfs);
void SynchronousCallInDebuggerThread(ThreadCallHandler pptc);
void HandleRuntimeError(IActiveScriptErrorDebug pErrorDebug, IActiveScriptSite pScriptSite, out BREAKRESUME_ACTION pbra, out ERRORRESUME_ACTION perra, out bool pfCallOnScriptError);
void AddGlobalExpressionContextProvider(IProvideExpressionContexts pdsfs);
void RemoveGlobalExpressionContextProvider(IProvideExpressionContexts pdsfs);
public delegate void ThreadCallHandler();
public interface IDebugApplicationThread
void SynchronousCallIntoThread();
public enum ERRORRESUME_ACTION
ERRORRESUMEACTION_ReexecuteErrorStatement,
ERRORRESUMEACTION_AbortCallAndReturnErrorToCaller,
ERRORRESUMEACTION_SkipErrorStatement,
public interface IActiveScriptSite
object GetItemInfo(string pstrName);
void AddNamedItem(string pstrName);
void OnScriptError(IActiveScriptError pase);
public interface IActiveScriptSiteDebug
IDebugApplication GetApplication();
void OnScriptErrorDebug(IActiveScriptErrorDebug pErrorDebug, out bool pfEnterDebugger, out bool pfCallOnScriptErrorWhenContinuing);
public interface IActiveScriptParse
object ParseScriptText(string pstrCode, string pstrItemName, object punkContext, uint ulStartingLineNumber, ScriptFlags dwFlags);
public interface IActiveEngine : IActiveScript, IActiveScriptDebug, IActiveScriptParse
IActiveScript GetEngine(string name);
public interface IActiveScript
void SetScriptSite(IActiveScriptSite pScriptSite);
IActiveScriptSite GetScriptSite();
void SetScriptState(SCRIPTSTATE scriptstate);
SCRIPTSTATE GetScriptState();
void AddNamedItem(string pstrName, NamedItemFlags dwFlags);
void AddTypeLib(string assemblyName);
void GetScriptDispatch();
void GetCurrentScriptThreadID();
void GetScriptThreadID();
void GetScriptThreadState();
public interface IActiveScriptDebug
IEnumerable<IDebugCodeContext> EnumCodeContextsOfPosition();
public interface IActiveScriptErrorDebug
IDebugDocumentContext GetDocumentContext();
IDebugStackFrame GetStackFrame();
public interface IDebugDocumentContext
IDebugDocument GetDocument();
IEnumerable<IDebugCodeContext> EnumCodeContexts();
public interface IDebugDocument : IDebugDocumentInfo
public interface IDebugDocumentInfo
string GetName(DOCUMENTNAMETYPE dnt);
public enum DOCUMENTNAMETYPE
DOCUMENTNAMETYPE_APPNODE,
DOCUMENTNAMETYPE_FILE_TAIL,
DOCUMENTNAMETYPE_UNIQUE_TITLE,
SCRIPTSTATE_UNINITIALIZED = 0,
SCRIPTSTATE_INITIALIZED = 5,
SCRIPTSTATE_CONNECTED = 2,
SCRIPTSTATE_DISCONNECTED = 3,
public enum NamedItemFlags
SCRIPTITEM_GLOBALMEMBERS,
public interface IActiveScriptError
Exception GetExceptionInfo();
object GetSourcePosition(out int pulLineNumber, out int pichCharPosition);
string GetSourceLineText();
BREAKREASON_DEBUGGER_BLOCK,
BREAKREASON_HOST_INITIATED,
BREAKREASON_LANGUAGE_INITIATED,
BREAKREASON_DEBUGGER_HALT,
public enum BREAKRESUME_ACTION
BREAKRESUMEACTION_CONTINUE,
BREAKRESUMEACTION_STEP_INTO,
BREAKRESUMEACTION_STEP_OVER,
BREAKRESUMEACTION_STEP_OUT,
BREAKRESUMEACTION_IGNORE,
BREAKRESUMEACTION_STEP_DOCUMENT
public enum APPBREAKFLAGS : uint
APPBREAKFLAG_DEBUGGER_BLOCK= 0x00000001,
APPBREAKFLAG_DEBUGGER_HALT= 0x00000002,
APPBREAKFLAG_STEP= 0x00010000,
APPBREAKFLAG_NESTED= 0x00020000,
APPBREAKFLAG_STEPTYPE_SOURCE= 0x00000000,
APPBREAKFLAG_STEPTYPE_BYTECODE= 0x00100000,
APPBREAKFLAG_STEPTYPE_MACHINE= 0x00200000,
APPBREAKFLAG_STEPTYPE_MASK= 0x00F00000,
APPBREAKFLAG_IN_BREAKPOINT= 0x80000000
public interface IRemoteDebugApplicationThread
IEnumerable<DebugStackFrameDescriptor> EnumStackFrames();
void Suspend(int milliseconds);
public struct DebugStackFrameDescriptor
public interface IDebugStackFrame
IDebugCodeContext GetCodeContext();
string GetDescriptionString();
string GetLanguageString();
IDebugProperty GetDebugProperty();
public interface IDebugProperty
DebugPropertyInfo GetPropertyInfo();
object[] GetExtendedInfo();
void SetValueAsString(string pszValue);
IEnumerable<DebugPropertyInfo> EnumMembers(DBGPROP_INFO_FLAGS dwFieldSpec);
IDebugProperty GetParent();
public struct DebugPropertyInfo
public DBGPROP_INFO_FLAGS dwValidFields;
public string bstrFullName;
public DBGPROP_ATTRIB_FLAGS dwAttrib;
public IDebugProperty pDebugProp;
public enum DBGPROP_INFO_FLAGS
DBGPROP_INFO_NAME =0x001,
DBGPROP_INFO_TYPE =0x002,
DBGPROP_INFO_VALUE =0x004,
DBGPROP_INFO_FULLNAME =0x020,
DBGPROP_INFO_ATTRIBUTES =0x008,
DBGPROP_INFO_DEBUGPROP =0x010,
DBGPROP_INFO_AUTOEXPAND =0x8000000
public enum DBGPROP_ATTRIB_FLAGS : uint
DBGPROP_ATTRIB_NO_ATTRIB =0x00000000,
DBGPROP_ATTRIB_VALUE_IS_INVALID =0x00000008,
DBGPROP_ATTRIB_VALUE_IS_EXPANDABLE =0x00000010,
DBGPROP_ATTRIB_VALUE_READONLY =0x00000800,
DBGPROP_ATTRIB_ACCESS_PUBLIC =0x00001000,
DBGPROP_ATTRIB_ACCESS_PRIVATE =0x00002000,
DBGPROP_ATTRIB_ACCESS_PROTECTED =0x00004000,
DBGPROP_ATTRIB_ACCESS_FINAL =0x00008000,
DBGPROP_ATTRIB_STORAGE_GLOBAL =0x00010000,
DBGPROP_ATTRIB_STORAGE_STATIC =0x00020000,
DBGPROP_ATTRIB_STORAGE_FIELD =0x00040000,
DBGPROP_ATTRIB_STORAGE_VIRTUAL =0x00080000,
DBGPROP_ATTRIB_TYPE_IS_CONSTANT =0x00100000,
DBGPROP_ATTRIB_TYPE_IS_SYNCHRONIZED =0x00200000,
DBGPROP_ATTRIB_TYPE_IS_VOLATILE =0x00400000,
DBGPROP_ATTRIB_HAS_EXTENDED_ATTRIBS =0x00800000,
DBGPROP_ATTRIB_VALUE_IS_RETURN_VALUE =0x08000000
public interface IDebugCodeContext
IDebugDocumentContext GetDocumentContext();
void SetBreakPoint(BREAKPOINT_STATE bps);
public enum BREAKPOINT_STATE
public interface IDebugStackFrameSniffer
public interface IProvideExpressionContexts
IEnumerable<IDebugExpressionContext> EnumExpressionContexts();
public interface IDebugExpressionContext
IDebugExpression ParseLanguageText(string pstrCode, ParsingFlags dwFlags);
string GetLanguageInfo(out Guid pLanguageID);
public interface IDebugExpression
IDebugExpressionCallBack Start();
string GetResultAsString(out object result);
IDebugProperty GetResultAsDebugProperty(object result);
public interface IDebugExpressionCallBack
event EventHandler OnComplete;
DEBUG_TEXT_ISEXPRESSION = 0x00000001,
DEBUG_TEXT_RETURNVALUE = 0x00000002,
DEBUG_TEXT_NOSIDEEFFECTS = 0x00000004,
DEBUG_TEXT_ALLOWBREAKPOINTS = 0x00000008,
DEBUG_TEXT_ALLOWERRORREPORT = 0x00000010,
DEBUG_TEXT_EVALUATETOCODECONTEXT = 0x00000020