0

运行 Metro 应用程序时出现以下错误:

运行时遇到致命错误。错误地址位于线程 0x279c 上的 0x6e6b9a68。错误代码为 0x80131506。此错误可能是 CLR 中的错​​误或用户代码的不安全或不可验证部分中的错误。此错误的常见来源包括 COM 互操作或 PInvoke 的用户封送错误,这可能会损坏堆栈。

我很难认为 CLR 有问题。

该应用程序是纯 C#,没有 C++。

我不使用互操作。

我应该看什么?

4

4 回答 4

1

如果您正在构建 Metro 应用程序,请为这种异常情况做好准备,从而导致严重的睡眠不足。在 Microsoft 论坛中,不久前有一个线程,我们似乎隔离了当您与自定义值转换器绑定时发生的问题。真正简单的转换器很好,但有趣的转换器会在看似随机的时间产生这个异常。祝你好运。

于 2012-04-20T21:05:41.500 回答
0

Windows 8 仍处于测试阶段。我不确定“buggy”对于尚未发布的软件来说是一个公平的形容词。对于你的问题——在这个阶段他们可能都是错误的。

于 2012-05-22T14:27:18.180 回答
0

即使您的应用程序是纯 c#,对 WinRT API 的任何调用都是 c# 和 c++ 之间的互操作。它们之间的互操作层是 CLR 的责任,这就是为什么异常说它可能是 CLR 错误。

于 2012-07-22T16:44:53.293 回答
0

每个软件都有错误。如果这个问题是可重现的,你应该这样做:1)将问题缩小到一个测试用例。这也将确保问题不在您身边,而实际上是在运行时。2) 搜索是否没有任何已经发布的错误报告或知识库文章 3) 向微软提交错误报告。

如果崩溃是可重现的,我相信微软会尽最大努力找到并修复错误。

于 2012-04-20T16:27:13.103 回答