无法进入并调试服务组件源代码

Ete*_*oob 7 c# com+ servicedcomponent visual-studio-2012

我在C#中开发了一个COM +组件,继承了ServicedComponent.这是它的样子:

    [Transaction(TransactionOption.Required)]
    [ClassInterface(ClassInterfaceType.AutoDual)]
    [EventTrackingEnabledAttribute(true)]
    [JustInTimeActivation]
    [ObjectPooling(Enabled = true, MinPoolSize = 10, MaxPoolSize = 30, CreationTimeout = 15000)]
    [Synchronization]

    class MyComponent: System.EnterpriseServices.ServicedComponent
    {
        [AutoComplete(true)]
        public string getHello()
        {//2nd breakpoint
            ContextUtil.SetComplete();
            return "HelloWorld";
        }
    }
Run Code Online (Sandbox Code Playgroud)

我有另一个测试项目,我称之为该组件.

class Program
{
static void Main(string[] args)
{
MyComponent myComp = new MyComponent();
myComp.getHello();//1st Breakpoint
}
}
Run Code Online (Sandbox Code Playgroud)

我无法达到第二个断点.这是在我切换到VS 2012之前的工作.奇怪的是,在切换到2012之后,它不再在VS 2010中工作了.

我已经试过了,

  • 附加到流程
  • 在调试设置中取消选中"启用我的代码"

有人可以从这里指点吗?

更新1

从Mike给出的链接,我在DLL和PDB文件所在的同一文件夹中尝试了symchk for my DLL.它失败并显示PDB不匹配或未找到错误.我不知道如何解决这个错误.

Top*_*000 5

您可能缺少项目中的.pdb文件.

请查看此微软链接以获取解释:https://msdn.microsoft.com/en-us/library/yd4f8bd1(vs.71).aspx