程序适用于使用VS 2012但不是没有的计算机

时间:2013-06-26 16:47:23

标签: wpf xaml

只是一个奇怪的问题,我已经制作了一个WPF xaml程序,当我测试它时,它有效,我发布它并且它有效。但如果我安装已发布的应用程序或在没有安装VS的计算机上运行调试文件夹,我会收到以下错误:

Problem signature:
  Problem Event Name:   CLR20r3
  Problem Signature 01: program.exe
  Problem Signature 02: 1.0.0.0
  Problem Signature 03: 51cade56
  Problem Signature 04: MJ_QAQC
  Problem Signature 05: 1.0.0.0
  Problem Signature 06: 51cade56
  Problem Signature 07: 294
  Problem Signature 08: 1c
  Problem Signature 09: System.Windows.Markup.XamlParse
  OS Version:   6.1.7600.2.0.0.256.48
  Locale ID:    1033
  Additional Information 1: 0a9e
  Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
  Additional Information 3: 0a9e
  Additional Information 4: 0a9e372d3b4ad19135b953a78882e789

我不知道这对任何人来说是否意味着什么,但我怀疑它与xaml有关。除了.net 4.5之外是否还需要安装任何其他先决条件才能运行xaml应用程序?

谢谢!

2 个答案:

答案 0 :(得分:2)

  

除了.net 4.5之外是否还需要安装任何其他先决条件才能运行xaml应用程序?

这取决于。您还需要部署应用程序使用的任何其他程序集,这些程序集不属于核心框架。

例如,如果您使用第三方控件,则需要在部署中包含该控件。检查非框架程序集的项目引用应该允许您找到这些依赖项。

答案 1 :(得分:0)

在其他计算机的C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5下,您有Microsoft.CSharp.dll还是System.Xaml.dll?你的一些机器可能已经拥有它们,这就是为什么它们中的一些可以运行它,有些则不能。

注意:它可能不在C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5下,可能位于C:\Program Files (x86)\Reference Assemblies\Microsoft\.

中的其他目录下

当您进行发布时,它会添加您在运行Visual Studio时不需要的库,因为您已在Reference Assemblies目录中拥有它们。