• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C# Engine.DnDebugger类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中dndbg.Engine.DnDebugger的典型用法代码示例。如果您正苦于以下问题:C# DnDebugger类的具体用法?C# DnDebugger怎么用?C# DnDebugger使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



DnDebugger类属于dndbg.Engine命名空间,在下文中一共展示了DnDebugger类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: DnDebugger_DebugCallbackEvent

		void DnDebugger_DebugCallbackEvent(DnDebugger dbg, DebugCallbackEventArgs e) {
			if (e.Type == DebugCallbackType.CreateProcess) {
				dbg.DebugCallbackEvent -= DnDebugger_DebugCallbackEvent;
				var cpArgs = (CreateProcessDebugCallbackEventArgs)e;
				bool b = Initialize(cpArgs.CorProcess, dbg.DebuggeeVersion);
				Debug.Assert(b);
			}
		}
开发者ID:arkanoid1,项目名称:dnSpy,代码行数:8,代码来源:DisableSystemDebuggerDetection.cs


示例2: InstallDebuggerHooks

		void InstallDebuggerHooks(DnDebugger dbg) {
			dbg.OnModuleAdded += DnDebugger_OnModuleAdded;
			dbg.OnNameChanged += DnDebugger_OnNameChanged;
			var modules = GetAllModules(dbg).ToArray();
			Array.Sort(modules, (a, b) => a.ModuleOrder.CompareTo(b.ModuleOrder));
			foreach (var module in modules)
				Add(module);
		}
开发者ID:arkanoid1,项目名称:dnSpy,代码行数:8,代码来源:ModulesVM.cs


示例3: BreakProcessHelper

		public BreakProcessHelper(DnDebugger debugger, BreakProcessKind type, string filename) {
			if (debugger == null)
				throw new ArgumentNullException();
			this.debugger = debugger;
			this.type = type;
			this.filename = filename;
			AddStartupBreakpoint();
		}
开发者ID:GreenDamTan,项目名称:dnSpy,代码行数:8,代码来源:BreakProcessHelper.cs


示例4: DnProcess

 internal DnProcess(DnDebugger ownerDebugger, ICorDebugProcess process, int incrementedId)
 {
     this.ownerDebugger = ownerDebugger;
     this.appDomains = new DebuggerCollection<ICorDebugAppDomain, DnAppDomain>(CreateAppDomain);
     this.threads = new DebuggerCollection<ICorDebugThread, DnThread>(CreateThread);
     this.process = new CorProcess(process);
     this.incrementedId = incrementedId;
 }
开发者ID:kenwilcox,项目名称:dnSpy,代码行数:8,代码来源:DnProcess.cs


示例5: Initialize

		public void Initialize(DnDebugger dbg) {
			Debug.Assert(debugger.Dispatcher.CheckAccess());
			Debug.Assert(dbgBreakpoint == null);
			if (dbgBreakpoint != null)
				throw new InvalidOperationException();
			dbgBreakpoint = dbg.CreateBreakpoint(EventKind.ToDebugEventBreakpointKind(), HitHandler);
			dbgBreakpoint.IsEnabled = isEnabled;
			dbgBreakpoint.Tag = this;
		}
开发者ID:manojdjoshi,项目名称:dnSpy,代码行数:9,代码来源:EventBreakpoint.cs


示例6: DnDebugger_DebugCallbackEvent

		void DnDebugger_DebugCallbackEvent(DnDebugger dbg, DebugCallbackEventArgs e) {
			if (nameErrorCounter != 0 && e.Type == DebugCallbackType.LoadClass) {
				var lcArgs = (LoadClassDebugCallbackEventArgs)e;
				var module = dbg.TryGetModule(lcArgs.CorAppDomain, lcArgs.CorClass);
				Debug.Assert(module != null);
				if (module != null && module.IsDynamic)
					pendingModules.Add(module.SerializedDnModule);
			}
		}
开发者ID:arkanoid1,项目名称:dnSpy,代码行数:9,代码来源:BreakpointsVM.cs


示例7: GetAllModules

		static IEnumerable<DnModule> GetAllModules(DnDebugger dbg) {
			foreach (var process in dbg.Processes) {
				foreach (var appDomain in process.AppDomains) {
					foreach (var assembly in appDomain.Assemblies) {
						foreach (var module in assembly.Modules)
							yield return module;
					}
				}
			}
		}
开发者ID:arkanoid1,项目名称:dnSpy,代码行数:10,代码来源:ModulesVM.cs


示例8: DnDebugger_DebugCallbackEvent

        void DnDebugger_DebugCallbackEvent(DnDebugger dbg, DebugCallbackEventArgs e)
        {
            try {
                DebugCallbackEvent_counter++;

                if (DebugCallbackEvent_counter > 1)
                    return;
                if (e.Type == DebugCallbackType.Exception2) {
                    var ee = (Exception2DebugCallbackEventArgs)e;
                    if (ee.EventType == CorDebugExceptionCallbackType.DEBUG_EXCEPTION_UNHANDLED)
                        UnhandledException(ee);
                }
                else if (e.Type == DebugCallbackType.DebuggerError)
                    OnDebuggerError((DebuggerErrorDebugCallbackEventArgs)e);
            }
            finally {
                DebugCallbackEvent_counter--;
            }
        }
开发者ID:andyhebear,项目名称:dnSpy,代码行数:19,代码来源:DebugManager.cs


示例9: Initialize

		public static void Initialize(DnDebugger debugger) {
			new DisableSystemDebuggerDetection(debugger);
		}
开发者ID:arkanoid1,项目名称:dnSpy,代码行数:3,代码来源:DisableSystemDebuggerDetection.cs


示例10: AddDebugger

        void AddDebugger(DnDebugger newDebugger)
        {
            RemoveDebugger();

            debugger = newDebugger;
            DebugCallbackEvent_counter = 0;
            newDebugger.OnProcessStateChanged += DnDebugger_OnProcessStateChanged;
            newDebugger.DebugCallbackEvent += DnDebugger_DebugCallbackEvent;
        }
开发者ID:andyhebear,项目名称:dnSpy,代码行数:9,代码来源:DebugManager.cs


示例11: CallOnProcessStateChanged

 void CallOnProcessStateChanged(DnDebugger dbg = null)
 {
     CallOnProcessStateChanged(dbg ?? debugger, DebuggerEventArgs.Empty);
 }
开发者ID:andyhebear,项目名称:dnSpy,代码行数:4,代码来源:DebugManager.cs


示例12: Debugger_DebugCallbackEvent

        void Debugger_DebugCallbackEvent(DnDebugger dbg, DebugCallbackEventArgs e)
        {
            var ee = e as EvalDebugCallbackEventArgs;
            if (ee == null)
                return;

            if (ee.Eval == eval.RawObject) {
                debugger.DebugCallbackEvent -= Debugger_DebugCallbackEvent;
                e.AddStopReason(DebuggerStopReason.Eval);
                debugMessageDispatcher.CancelDispatchQueue(ee.WasException);
                return;
            }
        }
开发者ID:lovebanyi,项目名称:dnSpy,代码行数:13,代码来源:DnEval.cs


示例13: CreateMethodKey

        static MethodKey? CreateMethodKey(DnDebugger debugger, CorFrame frame)
        {
            var sma = frame.GetSerializedDnModuleWithAssembly();
            if (sma == null)
                return null;

            return MethodKey.Create(frame.Token, sma.Value.Module);
        }
开发者ID:andyhebear,项目名称:dnSpy,代码行数:8,代码来源:DebugManager.cs


示例14: CreateDnDebuggerCoreCLR

 static DnDebugger CreateDnDebuggerCoreCLR(DebugProcessOptions options)
 {
     var clrType = (CoreCLRTypeDebugInfo)options.CLRTypeDebugInfo;
     var dbg2 = CoreCLRHelper.CreateDnDebugger(options, clrType, () => false, (cd, pid) => {
         var dbg = new DnDebugger(cd, options.DebugOptions, options.DebugMessageDispatcher, null);
         if (options.BreakProcessType != BreakProcessType.None)
             new BreakProcessHelper(dbg, options.BreakProcessType, options.Filename);
         ICorDebugProcess comProcess;
         cd.DebugActiveProcess((int)pid, 0, out comProcess);
         var dnProcess = dbg.TryAdd(comProcess);
         if (dnProcess != null)
             dnProcess.Initialize(false, options.Filename, options.CurrentDirectory, options.CommandLine);
         return dbg;
     });
     if (dbg2 == null)
         throw new Exception("Could not create a debugger instance");
     return dbg2;
 }
开发者ID:lovebanyi,项目名称:dnSpy,代码行数:18,代码来源:DnDebugger.cs


示例15: DnDebugger_DebugCallbackEvent

 void DnDebugger_DebugCallbackEvent(DnDebugger dbg, DebugCallbackEventArgs e)
 {
     if (e.Type == DebugCallbackType.Exception2)
         OnException((Exception2DebugCallbackEventArgs)e);
 }
开发者ID:mubix,项目名称:dnSpy,代码行数:5,代码来源:ExceptionManager.cs


示例16: AnyDebugEventBreakpointConditionContext

		public AnyDebugEventBreakpointConditionContext(DnDebugger debugger, DnAnyDebugEventBreakpoint bp, DebugCallbackEventArgs e)
			: base(debugger) {
			AnyDebugEventBreakpoint = bp;
			EventArgs = e;
		}
开发者ID:manojdjoshi,项目名称:dnSpy,代码行数:5,代码来源:DnAnyDebugEventBreakpoint.cs


示例17: UninstallDebuggerHooks

		void UninstallDebuggerHooks(DnDebugger dbg) {
			dbg.OnModuleAdded -= DnDebugger_OnModuleAdded;
			dbg.OnNameChanged -= DnDebugger_OnNameChanged;
		}
开发者ID:arkanoid1,项目名称:dnSpy,代码行数:4,代码来源:ModulesVM.cs


示例18: AddDebugger

		void AddDebugger(DnDebugger newDebugger) {
			RemoveDebugger();

			debugger = newDebugger;
			newDebugger.OnProcessStateChanged += DnDebugger_OnProcessStateChanged;
		}
开发者ID:lovebanyi,项目名称:dnSpy,代码行数:6,代码来源:TheDebugger.cs


示例19: Initialize

		public void Initialize(DnDebugger newDebugger) {
			foreach (var l in loadBeforeDebugInsts) {
				var o = l.Value;
			}
			if (debuggerSettings.DisableManagedDebuggerDetection)
				DisableSystemDebuggerDetection.Initialize(newDebugger);
			AddDebugger(newDebugger);
			Debug.Assert(debugger == newDebugger);
			CallOnProcessStateChanged();
		}
开发者ID:lovebanyi,项目名称:dnSpy,代码行数:10,代码来源:TheDebugger.cs


示例20: DnEval

 internal DnEval(DnDebugger debugger, IDebugMessageDispatcher debugMessageDispatcher)
 {
     this.debugger = debugger;
     this.debugMessageDispatcher = debugMessageDispatcher;
     this.suspendOtherThreads = true;
 }
开发者ID:lovebanyi,项目名称:dnSpy,代码行数:6,代码来源:DnEval.cs



注:本文中的dndbg.Engine.DnDebugger类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# DotNet.EmbeddedResource类代码示例发布时间:2022-05-26
下一篇:
C# Hex.MetaDataTableVM类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap