【发布时间】:2010-09-08 13:41:22
【问题描述】:
我在 C++ dll 上构建,用 C# 编写代码。
我得到一个错误,说
检测到 LoaderLock 消息: 尝试在操作系统内部进行托管执行 装载机锁。不要试图跑 DllMain 或图像中的托管代码 初始化函数,因为这样做 可能会导致应用程序挂起。
我尝试搜索此错误的确切含义,但我在绘制毫无意义的文章,主要是说这只是一个警告,我应该在 Visual Studio 中将其关闭。 其他解决方案似乎是由于 iTunes,或者使用 DirectX 编程时出现的这个问题。我的问题与这两个都没有关系。
谁能解释一下,这到底是什么意思?
【问题讨论】:
-
我和你有同感,我遇到了同样的问题,最让我惊讶的是:我的 dll 甚至不是托管代码,那么为什么/如何应该在(不存在的)上使用托管代码) DllMain??
-
我在尝试以调试模式查看数据集的内容时收到此警告。我正在使用 c#,它发生在常规的 windows 窗体中。
-
由于您无法找出原因(正如您在最佳答案中评论的那样),我怀疑您正在加载的 dll 正在犯罪。
标签: c# loaderlock