优先机会异常,Microsoft C ++异常:内存位置处的EEFileLoadException

时间:2018-07-23 09:00:49

标签: c# c++ dll first-chance-exception

我正在处理一个C ++ DLL,它是一个更大的项目的一部分,该应用程序是用C#编写的。

最近我收到了显示的Microsoft Visual Studio错误。我已经使用Visual Studio调试了该项目,我已经附加了该过程。我在DllMain中有一个断点,但是它在到达那里之前崩溃了,显示了一个对话框,其中包含:

    First-change exception at 0x74372ea2 in ........Service.exe:
    Microsoft C++ exception EEFileLoadException at memory location 0x039bc4d4..

如果我单击“中断”按钮,则会显示呼叫堆栈:

  
    

[以下框架可能不正确和/或丢失,没有为KernelBase.dll加载任何符号]
        KernelBase.dll!74372ea2()
        clr.dll!50bc454d()
        clr.dll!50afc3ee()
        clr.dll!50afc41d()
        clr.dll!50afc440()
        clr.dll!50b415a4()
        clr.dll!50b1a8dc()
        clr.dll!50b1a476()
        clr.dll!50b1e0c4()
        clr.dll!50b161b0()
        clr.dll!50b238aa()
        clr.dll!50b1f739()
        clr.dll!50b1f739()
        clr.dll!50b1c090()
        clr.dll!50b22caf()
        clrjit.dll!68971939()
        clrjit.dll!689922a5()
        clrjit.dll!68989fed()
        clrjit.dll!689749d5()
        clr.dll!50b1fecf()
        clr.dll!50b1ffac()
        clr.dll!50b1fff1()
        clr.dll!50b2024f()
        kernel32.dll!76933a61()
        kernel32.dll!76933a61()
        clr.dll!50adf405()
        clr.dll!50adf35f()
        clr.dll!50b209bf()
        clr.dll!50b21780()
        clr.dll!50adef11()
        mscorlib.ni.dll!78fda29d()
        mscorlib.ni.dll!790214a2()
        mscorlib.ni.dll!790213d6()
        mscorlib.ni.dll!79021391()
        mscorlib.ni.dll!78fda1f8()
        clr.dll!50adea56()
        clr.dll!50af93ef()
        clr.dll!50af9673()
        clr.dll!50c3ecfd()
        clr.dll!50afb213()
        clr.dll!50afb27d()
        clr.dll!50ae1c81()
        clr.dll!50adf405()
        clr.dll!50ae1c81()
        clr.dll!50ae1e80()
        clr.dll!50bd4917()
        kernel32.dll!769395e4()
        ntdll.dll!774d241a()
        ntdll.dll!774d23e9()

  

我该怎么做才能找出问题所在?

[编辑]根据建议,我执行了以下操作:

    Tools / Options / Debugging / Symbols

我指定了(.pdb)位置,该位置与DLL位置相同:

    C:\Edwards\Scada\Agent Service\

我还检查了路径以确保它是正确的,可惜没有任何区别。

[编辑2]还有更多信息,该项目的C#部分在Visual Studio 2010中开发。C++部分在Visual Studio 2008中。对此我无能为力。

0 个答案:

没有答案