【问题标题】:WPF Error on Non-Development PC - XamlParse非开发 PC 上的 WPF 错误 - XamlParse
【发布时间】:2010-08-06 11:44:47
【问题描述】:

我遇到了一个与in this question 非常相似的错误。我正在尝试在 6 台工作机器上部署一个小型 c#/Xaml 实用程序。 4 台机器成功运行该实用程序,2 台没有。所有机器都是 Windows XP 并安装了 .Net 框架 1-4(我的应用程序是针对 4.0 编译的,所有机器都安装了客户端和扩展的可再发行组件)。

在运行该实用程序时,我得到标准“...遇到问题并需要关闭。”查看报错内容,问题似乎出现在 System.Windows.Markup.XamlParse 中。

我在“修复”模式下运行了 .Net 4.0 在线安装程序,但我仍然遇到同样的问题。我已经尝试了上面链接的帖子中的所有建议:

  • 该文件与存在且正确的 DLL 一起部署。
  • UI 文化是相同的。
  • 所有计算机均已通过 Microsoft 更新保持最新状态。
  • 程序集不包含在 XAML 中引用的任何外部资源。

我真的不知道从哪里开始调试这个。有什么建议吗?

【问题讨论】:

  • 崩溃的机器是否使用不同的操作系统主题 - 即 Classic vs Luna?你看过 XamlParseExceptions 的 InnerExceptions 了吗?
  • 相同的主题,但我会看看 InnerExceptions 并报告我的进度...

标签: c# wpf debugging xaml


【解决方案1】:

我建议在有问题的机器上设置remote debugging,然后将其添加到启动代码中:

while (!System.Diagnostics.Debugger.IsAttached)
{
    Thread.Sleep(100);
}

【讨论】:

  • 感谢您的建议。不幸的是,因为我刚做这个工作,但不是专业程序员,我正在使用 Express Editions。
  • 啊。明白了。我最近和你在同一条船上,并且无法连接到带有远程调试器的系统......我最终只是在应用程序加载的每个步骤中写入一个日志文件,其中包含有关它在代码中的位置的信息,并且任何相关变量及其值。一次启动后,我发现了问题。
  • 问题仍然存在但是,我在其中一台不运行我的程序的机器上安装了 VS2010 express。 VS 调试器在尝试启动一个简单的 WPF 测试项目时崩溃,所以我在那台机器上安装了一些损坏的东西。 .Net 4.0 的修复模式安装无法修复它,因此可能是该机器上需要全新 XP 安装的情况。非常感谢您的建议。答案被接受,因为如果我的机器没有坏,我认为你的日志记录建议会成功!
猜你喜欢
  • 1970-01-01
  • 2011-01-16
  • 2012-06-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-15
相关资源
最近更新 更多