Ejemplo n.º 1
0
        public override void CreateApplication(out DebugApplicationWrapper applicationWrapper)
        {
            IDebugApplication64 debugApplication;

            processDebugManager.CreateApplication(out debugApplication);
            applicationWrapper = DebugApplicationWrapper.Create(debugApplication);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Initializes a new Windows Script engine instance.
        /// </summary>
        /// <param name="progID">The programmatic identifier (ProgID) of the Windows Script engine class.</param>
        /// <param name="name">A name to associate with the instance. Currently this name is used only as a label in presentation contexts such as debugger user interfaces.</param>
        /// <param name="flags">A value that selects options for the operation.</param>
        /// <remarks>
        /// The <paramref name="progID"/> argument can be a class identifier (CLSID) in standard
        /// GUID format with braces (e.g., "{F414C260-6AC0-11CF-B6D1-00AA00BBBB58}").
        /// </remarks>
        protected WindowsScriptEngine(string progID, string name, WindowsScriptEngineFlags flags)
            : base(name)
        {
            AccessContext = typeof(ScriptEngine);
            script        = base.ScriptInvoke(() =>
            {
                activeScript = ActiveScriptWrapper.Create(progID, flags);
                engineFlags  = flags;

                if (flags.HasFlag(WindowsScriptEngineFlags.EnableDebugging) && ProcessDebugManagerWrapper.TryCreate(out processDebugManager))
                {
                    processDebugManager.CreateApplication(out debugApplication);
                    debugApplication.SetName(Name);

                    if (processDebugManager.TryAddApplication(debugApplication, out debugApplicationCookie))
                    {
                        sourceManagement = !flags.HasFlag(WindowsScriptEngineFlags.DisableSourceManagement);
                    }
                    else
                    {
                        debugApplication.Close();
                        debugApplication    = null;
                        processDebugManager = null;
                    }
                }

                activeScript.SetScriptSite(new ScriptSite(this));
                activeScript.InitNew();
                activeScript.SetScriptState(ScriptState.Started);
                return(WindowsScriptItem.Wrap(this, GetScriptDispatch()));
            });
        }
Ejemplo n.º 3
0
 public abstract void AddApplication(DebugApplicationWrapper applicationWrapper, out uint cookie);
Ejemplo n.º 4
0
 public abstract void CreateApplication(out DebugApplicationWrapper applicationWrapper);
Ejemplo n.º 5
0
        public static IDebugApplication64 Unwrap(DebugApplicationWrapper wrapper)
        {
            var wrapper64 = wrapper as DebugApplicationWrapper64;

            return((wrapper64 != null) ? wrapper64.debugApplication : null);
        }
Ejemplo n.º 6
0
        public static IDebugApplication32 Unwrap(DebugApplicationWrapper wrapper)
        {
            var wrapper32 = wrapper as DebugApplicationWrapper32;

            return((wrapper32 != null) ? wrapper32.debugApplication : null);
        }
Ejemplo n.º 7
0
 public override bool TryAddApplication(DebugApplicationWrapper applicationWrapper, out uint cookie)
 {
     return(RawCOMHelpers.HResult.Succeeded(processDebugManager.AddApplication(DebugApplicationWrapper64.Unwrap(applicationWrapper), out cookie)));
 }
Ejemplo n.º 8
0
 public static IDebugApplication64 Unwrap(DebugApplicationWrapper wrapper)
 {
     return((wrapper is DebugApplicationWrapper64 wrapper64) ? wrapper64.debugApplication : null);
 }
Ejemplo n.º 9
0
 public static IDebugApplication32 Unwrap(DebugApplicationWrapper wrapper)
 {
     var wrapper32 = wrapper as DebugApplicationWrapper32;
     return (wrapper32 != null) ? wrapper32.debugApplication : null;
 }
Ejemplo n.º 10
0
 public abstract void CreateApplication(out DebugApplicationWrapper applicationWrapper);
Ejemplo n.º 11
0
 public override void AddApplication(DebugApplicationWrapper applicationWrapper, out uint cookie)
 {
     processDebugManager.AddApplication(DebugApplicationWrapper64.Unwrap(applicationWrapper), out cookie);
 }
Ejemplo n.º 12
0
 public abstract void AddApplication(DebugApplicationWrapper applicationWrapper, out uint cookie);
Ejemplo n.º 13
0
 public override bool TryAddApplication(DebugApplicationWrapper applicationWrapper, out uint cookie)
 {
     return RawCOMHelpers.HResult.Succeeded(processDebugManager.AddApplication(DebugApplicationWrapper64.Unwrap(applicationWrapper), out cookie));
 }
Ejemplo n.º 14
0
 public abstract bool TryAddApplication(DebugApplicationWrapper applicationWrapper, out uint cookie);
Ejemplo n.º 15
0
 public override void CreateApplication(out DebugApplicationWrapper applicationWrapper)
 {
     IDebugApplication64 debugApplication;
     processDebugManager.CreateApplication(out debugApplication);
     applicationWrapper = DebugApplicationWrapper.Create(debugApplication);
 }
Ejemplo n.º 16
0
 public override void AddApplication(DebugApplicationWrapper applicationWrapper, out uint cookie)
 {
     processDebugManager.AddApplication(DebugApplicationWrapper64.Unwrap(applicationWrapper), out cookie);
 }
Ejemplo n.º 17
0
 public abstract bool TryAddApplication(DebugApplicationWrapper applicationWrapper, out uint cookie);
Ejemplo n.º 18
0
 public static IDebugApplication64 Unwrap(DebugApplicationWrapper wrapper)
 {
     var wrapper64 = wrapper as DebugApplicationWrapper64;
     return (wrapper64 != null) ? wrapper64.debugApplication : null;
 }
Ejemplo n.º 19
0
 public static IDebugApplication32 Unwrap(DebugApplicationWrapper wrapper)
 {
     return((wrapper is DebugApplicationWrapper32 wrapper32) ? wrapper32.debugApplication : null);
 }