问题标签 [soft-debugger]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mono - 在运行时触发单声道软调试器
--debug --debugger-agent=transport=dt_socket,address=host:port
在启动应用程序时,我已经可以使用软调试器作为命令行选项(稍后在运行时使用特定的 monodevelop 软调试器。
查看Mono.Debugger.Soft API,我认为这是可能的,有什么例子吗?
ios - 为什么 MonoTouch 调试器会在一段时间后断开连接?
当我在 iPad 上调试应用程序时,通常会在一段时间后返回它时,调试会话已经停止,但应用程序仍在运行。
这非常令人沮丧,因为我专门UIWebView
在应用程序中加入了一些调试工具,比如在滑动时重新加载外部内容,这样我每次更改时都不必重新编译它。
我查看了设置,并没有发现像“调试超时”这样的东西。怎么了?
debugging - Mono Soft Debugger - 添加断点
我目前正在为 Mono 开发调试器。因此,我正在使用具有 VirtualMachineManager 和 VirtualMachine 的 Mono.Debugger.Soft.dll。
问题是:如果我想在一个简单的程序中创建一个断点,我该怎么做?(例如 Sourceodefile:Program.cs 和 Line:17)
VirtualMachine的Instance有一个SetBreakpoint-Method,但是这个Method需要一个MethodMirror。我不清楚如何通过只知道源代码文件中的位置来获得它?
迎接克里斯蒂安
debugging - Xamarin Studio 是否允许以比这更简单的方式调试库 (dll) 项目?
我正在开发一个名为 的 C# dll,child.dll
它将由另一个名为parent.exe
. 我无权访问parent.exe
.
在 Visual Studio 上,当我想调试我的 dll 项目时,我只需要将调试器附加到parent.exe
可以了。我找不到在 Xamarin Studio 上执行此操作的简单方法。
我现在正在做的是:
- 设置 env var
MONODEVELOP_SDB_TEST=1
以启用“自定义命令单声道软调试器” - 使用与第一步相同的终端启动 Xamarin Studio。
- 在 Xamarin Studio 选项 -> 调试器中取消选中“仅调试项目代码;不要单步执行框架代码”
- 在我的
child.dll
. 这是因为 Xamarin Studio 不允许库项目类型的“运行方式”。通过这样做,我现在可以访问 Xamarin Studio 的“运行方式”功能。 - 构建整个解决方案,复制
child.dll
到parent.exe
想要的位置并运行mono --debug --debugger-agent=transport=dt_socket,server=y,suspend=n,address=127.0.0.1:55555 parent.exe parent-args
。(Parent.exe
将加载child.dll
) - 将虚拟项目设置为启动项目
- 使用 > Custom Command Mono Soft Debugger 运行并连接到 127.0.0.1:55555
我正在寻找一种方法让我公司中的其他开发人员能够child.dll
在parent.exe
. 我认为唯一不可接受的步骤是第四步,这对他们没有任何意义。
有人遇到和我一样的问题吗?你是如何实现目标的?
更新信息
我过度简化了这个问题。在实际场景中,我自己没有管理 parent.exe。parent.exe
已经运行(使用这个确切的命令mono --debug --debugger-agent=transport=dt_socket,server=y,suspend=n,address=127.0.0.1:55555 parent.exe parent-args
),它由另一个程序启动(Process.Start)作为整个框架的一部分。
基本上,创建 child.dll 的开发人员的工作流程是创建一个定义框架需要的一些 API 的 dll。然后,将 dll 注入框架。