我有一个用regasm注册的C#dll。这个dll与一个用visual c ++编写的旧的可执行文件一起使用。我最初在32位xp的VS2008中构建了DLL。我最近将其移至Windows 8并在VS2013中重建。
我无法再在此dll中遇到断点。它在XP / 2008设置上运行得很好。输出目录是正确的,.pdb文件位于正确的位置,设置与以前相同。
唯一的区别是,要使其工作,我必须将目标平台标志设置为x86,以便让DLL在Windows 8框中正确注册和实例化。
我整天都在敲我的脑袋。我还试图启动target.exe并使用" attach process"打到断点,但没有骰子。我已经清理过.pdb文件,清理和重建等,但无济于事。
任何人都知道我可能做错了什么?
答案 0 :(得分:0)
使用在以下位置找到的对话框仔细检查您的符号文件是否在执行期间正确加载: 工具 - >选项 - >调试(标签) - >符号
在这里,您可以指定visual studio应该在其中查找.pdb文件的符号目录。
答案 1 :(得分:0)
我终于明白了!
Debug-> Attach To Process对话框。
附加至: 托管(v3.5,v3.0,v2.0)代码,本机代码。 //我从'自动'改变了这个。
DLL的项目设置中的目标.NET框架是3.5。我猜'自动'检测设置不起作用,因为我认为......