none
动态调用的dll,在引用另一个dll时的debug问题

    问题

  • 我的exe程序通过Assembly类在运行时动态调用一个test.dll,同时,这个test.dll引用了test2.dll,运行正常。test.dll和test2.dll的代码是在同一个solution里,都是C#,.NET 4.0。

    我在VS2015里通过附加到进程的方法,可以成功debug到test.dll里的代码,但是无法调试进test2.dll的代码里,在debug到test.dll调用test2.dll的相关代码行按F11,VS报错如下:

    请问要如何才能实现debug?

    2016年5月16日 2:56

答案

全部回复

  • 很奇怪啊,都是C#的,调试引擎都一样啊,怎么一个可以,一个不可以呢。

    检查下,是不是Debug模式build的,还有调试文件.pdb是不是和.dll在同一个目录下。

    或者试一试直接设置断点到test2.dll中去。

    2016年5月16日 5:11
  • 调用test2.dll的相关代码行,在test2.dll中 

    可以在方法的第一句 加一行 Debugger.Launch() 方法附加调试器

     同样,PDB文件是要有的


    专注于.NET MIS开发框架,C/S架构,SQL Server + ORM(LLBL Gen Pro) + Infragistics WinForms

    2016年5月16日 6:05
  • 已经解决了,要在VS的调试的选项里,勾选”使用托管兼容模式“,”使用本机兼容性模式“
    2016年5月19日 2:30