【问题标题】:Cannot run any windows WPF applications in windows XP SP3 SP2无法在 Windows XP SP3 SP2 中运行任何 Windows WPF 应用程序
【发布时间】:2014-05-11 11:56:51
【问题描述】:

我有一个应用程序正在尝试部署到多台客户端计算机。主计算机的部署进展顺利。但是当我在辅助计算机上运行应用程序时,应用程序崩溃了。这些计算机都是在 VMWare 内运行的 Windows XP SP2 或 SP3 VM。当我第一次运行应用程序时,我收到了应用程序需要 .NET v4.0 框架的消息。我安装了: http://www.microsoft.com/en-us/download/details.aspx?id=24872

安装后,应用程序一开始就会崩溃,并显示发送错误报告对话框。我尝试在 Visual Studio 2012 中制作一个空白的 WPF 项目——它也崩溃了。我已经在其他 XP 中测试了空白应用程序和真实应用程序,并没有问题地赢得了 7 个虚拟机。 当我尝试运行 Windows 窗体应用程序时,它们运行良好 - 所以它只会影响 WPF 应用程序。

当我检查偶数查看器时,每次启动崩溃都会出现 2 个错误:

Faulting application remoteclientapp.exe, version 1.0.0.0, stamp 532bee4b, faulting module kernel32.dll, version 5.1.2600.6293, stamp 506bc5e5, debug? 0, fault address 0x00012fd3.

Application: RemoteClientApp.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.IO.FileNotFoundException
Stack:

我花了很多时间修复/安装 .net 框架。我还在目标机器上使用 AVG 进行了病毒扫描。有没有人知道这个问题可能与什么有关?

更新

我使用了进程监视器。我发现了一些类似的东西:

42:39.4 test.exe    3048    QueryOpen   C:\Documents and Settings\Administrator\Desktop\rsaenh.dll  NAME NOT FOUND  

这有关系吗?似乎这个 dll 不会位于此处。我已经在工作和非工作环境中运行了测试应用程序,这里是日志比较:

http://codeunity.net/logfile_compare.csv

【问题讨论】:

  • 您可以使用Process Monitor 找出导致未找到异常的丢失文件。
  • 如果您查看从 808 开始的行,Windows 找不到 System.Xaml.dll。这导致我this post。这表明您需要在您的应用程序中发送System.Xaml.dll。它还建议创建一个安装包。这是明智的,即使您不打算使用它,因为它会准确地显示您需要的文件。其他帖子建议该文件应该已经安装。无论如何,这是值得一看的。

标签: .net windows frameworks windows-xp


【解决方案1】:

找到了解决方案,尽管它在一定程度上是一种解决方法。

我们最终为 dotnet 3.5 框架编译了应用程序。由于某种原因,这在客户端机器上工作。但是,我们仍然收到此处描述的数据绑定错误

A 'Binding' can only be set on a DependencyProperty of a DependencyObject

我不相信这个数据绑定错误是相关的,但当目标是 3.5 框架时,它被证明是 XAML 中的一个坏字符。

我应该提到,arx 给出的评论实际上听起来很相关,尽管我认为 XAML 问题是在更改为 dotnet 3.5 之后发生的。如果您遇到此问题,您应该考虑尝试 3.5,但也要检查 XAML 问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-08
    • 1970-01-01
    • 1970-01-01
    • 2010-11-22
    • 1970-01-01
    相关资源
    最近更新 更多