Bin*_*hen 66 c# debugging visual-studio
我想在生成过程中附加到进程(a.exe),是否可以使用VS?我只知道这个过程的名称.实际上我想要完成的是在c#代码中设置一个断点,但代码属于另一个可执行文件,它将由当前运行的应用程序(c.exe)启动.代码在初始化期间,因此我无法手动执行连接.
Mar*_*son 67
当我以前遇到这种情况(并且我控制了两个进程)时,我发现一个不错的解决方法是在产生进程的入口点调用Debugger.Launch().然后,VS将弹出一个对话框,让您附加到该过程.
Rub*_*ink 27
请参阅MSDN文章,如何:自动启动调试器 - 这将允许人们跳过过多的繁忙工作单击确认对话框[不关闭UAC或其他混乱].本文列出了以下步骤:
- 启动注册表编辑器(regedit).
- 在注册表编辑器中,打开HKEY_LOCAL_MACHINE文件夹.
- 导航到HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\currentversion\image文件执行选项.
- 在" 映像文件执行选项"文件夹中,找到要调试的应用程序的名称,例如myapp.exe.如果找不到要调试的应用程序:
a.右键单击" 图像文件执行选项"文件夹,然后在快捷菜单上单击" 新建密钥".
湾 右键单击新密钥,然后在快捷菜单上单击" 重命名".C.编辑应用程序名称的密钥名称; myapp.exe,在此示例中.- 右键单击myapp.exe文件夹,然后在快捷菜单上单击" 新建字符串值".
- 右键单击新字符串值,然后在快捷菜单上单击"重命名".
- 将名称更改为调试器.
- 右键单击新的字符串值,然后在快捷菜单上单击" 修改".将出现" 编辑字符串"对话框.
- 在" 数值数据"框中,键入vsjitdebugger.exe.
- 单击确定.
- 从注册表菜单中,单击退出.
- 包含vsjitdebugger.exe的目录必须位于系统路径中.将它添加到系统路径,请按照下列步骤操作:
一.在"经典"视图中打开" 控制面板",然后双击" 系统".
湾 单击高级系统设置.
C.在" 系统属性"中单击" 高级"选项卡.
d.在" 高级"选项卡上,单击" 环境变量".
即 在" 环境变量"对话框的" 系统变量"下,选择" 路径",然后单击" 编辑"按钮.
F.在里面在"编辑系统变量"对话框中,将目录添加到" 变量值"框中.使用分号将其与列表中的其他条目分开.
G.单击" 确定"关闭" 编辑系统变量"对话框.
H.单击" 确定"关闭" 环境变量"对话框.一世.单击" 确定"关闭" 系统属性"对话框.- 现在,使用任何方法启动您的应用程序.Visual Studio将启动并加载应用程序
当我在验收测试中启动控制台应用程序时,我一直在寻找一些方法.
它是视觉工作室的附加组件,它可以作为一种享受.当我调试验收测试(我使用resharper测试运行器)并在启动的应用程序中放置一个断点时,我现在可以在同一个Visual Studio实例中调试应用程序.
您还可以使用 Windows 调试工具附带的 gflags.exe 实用程序,您需要做的就是打开 gflags.exe 然后转到图像文件输入进程名称 (a.exe) 按 Tab 键并选中调试器复选框,在文本框中使用选项 /debugexe 输入 vs 路径(即“C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe”/debugexe)
一旦进程运行,自动视觉工作室将打开,您可以添加断点并按运行。
“ Entrian Attach”是一个精确执行此操作的Visual Studio加载项-您将可执行文件的名称告诉它,并在进程启动时附加调试器,而不管其启动方式如何,然后再运行任何代码。
(披露:我是作者。我建立了Attach,因为我一直都遇到这个问题!)
| 归档时间: |
|
| 查看次数: |
38004 次 |
| 最近记录: |