【问题标题】:C# OS Loader lock Visual Studio 2010C# OS Loader 锁 Visual Studio 2010
【发布时间】:2010-09-17 23:13:03
【问题描述】:

在 VS 2008 中,当我尝试步入

return new Triangles(element, mesh);

行,我第一次得到以下错误

DLL 'C:\Windows\assembly\GAC\Microsoft.DirectX\1.0.2902.0__31bf3856ad364e35\Microsoft.DirectX.dll' 正在尝试在 OS Loader 锁内进行托管执行。不要尝试在 DllMain 或图像初始化函数中运行托管代码,因为这样做会导致应用程序挂起。

在第一次单步执行代码后,我没有收到任何警告,一切正常。

在 2010 年,当我到达同一行时,程序第一次挂起(就像 2008 年可能发生的警告状态一样)

据我所知,该区域周围没有 DirectX 调用。我怎样才能更好地调试这个问题,我需要做些什么来解决它?

谢谢

  • 回答 - 希望这会帮助其他一些人。通过创建 app.config 文件,我能够让 VS 2010 中的解决方案像 VS 2008 解决方案一样工作。

    <startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0"/>
    </startup>
    

【问题讨论】:

    标签: c# visual-studio-2010 directx


    【解决方案1】:

    这是带有 DirectX 的 known problem...from 2004

    安装 DirectX SDK 的 latest version 就可以了。

    【讨论】:

    • 安装了最新的 DirectX SDK 后,我仍然收到警告,没关系。问题是在 2010 年,我什至没有收到 Loader Lock 警告,程序只是挂起。感谢您的尝试。
    • 我找到了答案,现在在我的问题中进行了编辑。感谢您的调查。
    【解决方案2】:
    <startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0"/>
    </startup>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-17
      • 1970-01-01
      • 2011-03-06
      • 1970-01-01
      • 1970-01-01
      • 2011-06-30
      • 1970-01-01
      相关资源
      最近更新 更多