Silverlight应用程序无法运行。我收到了无效或格式错误的应用程序错误

时间:2009-11-25 00:14:41

标签: silverlight silverlight-3.0

我有一个Silverlight应用程序,当我点击“运行”时,Internet Explorer启动并且没有显示任何内容。我在左下角看到一个错误图标,当我点击它时会导致以下错误。

  

网页错误详情

     

用户代理:Mozilla / 4.0(兼容; MSIE 8.0; Windows NT 6.1; Trident / 4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0 )   时间戳:2009年11月25日星期三00:11:41 UTC

     

消息:Silverlight应用程序中未处理的错误

     

代码:2103

     

类别:InitializeError

     

消息:应用程序无效或格式错误:检查清单

     

线:54   查尔:13   代码:0   URI:http://localhost:50511/TestPage.html

为什么会出现此错误?我该如何解决?

我环顾四周,其他人在重命名应用程序时似乎遇到了这个错误,但是我还没有这样做。

我创建了一个自定义样式,如果它可能与它有任何关系。

我没有编码,我所做的就是拖动我的风格控件并链接页面。

11 个答案:

答案 0 :(得分:33)

我在一些情况下遇到了这个错误。检查属性中的Startup Object是否正确(任何名称空间更改?)。请务必明确将Silverlight项目添加为Web项目的依赖项目,默认情况下不会这样做。

在Web项目属性中的Silverlight应用程序下重新添加Silverlight项目。确保App.xaml x:Class与命名空间和类名后面的代码匹配。嗯,我认为这些都是常用的技巧。

我希望这会有所帮助。

答案 1 :(得分:8)

以防这有助于其他人:

我正试着弄清楚为什么会出现这个错误。一切似乎都是正确的。

.xap文件只是一个.zip ,因此可以在部署后手动更改ClientConfig中的信息(只需解压缩文件然后重新存档)。我在部署后一直在更改WCF端点信息,然后重新解压缩。好吧,没有意识到我一直在拉链接文件夹,这意味着在zip文件夹中有一个文件夹而不是该文件夹的内容在zip的根目录中。

这是一个愚蠢的错误,但从客户的角度来看,.xap似乎很好。我得到的唯一错误是2103错误。将文件移动到zip的根目录解决了我的问题。

答案 2 :(得分:6)

在将现有Silverlight应用程序部署到新环境或重新设置的开发计算机时,我遇到过几次此问题。

安装IIS时,请确保已启用Static Content功能(在Common Http Features下),以便您可以在IIS管理器的根目录中看到MIME类型功能。类型.XAP应设置为application/x-silverlight

这解决了我的问题。

感谢:http://keremozen.com/2012/10/18/solution-alternatives-to-invalid-or-malformed-application-check-manifest-error/

答案 3 :(得分:4)

当我从App.xaml中引用的项目中删除资源字典时,出现此错误。 Visual Studio很好地构建了解决方案,并没有表明出现任何问题。

当我记得从App.xaml中删除该行时,一切正常。

答案 4 :(得分:3)

下面的事情对我来说很完美

(1)检查属性中的启动对象是否正确。

(2)确保将您的Silverlight项目显式添加为Web项目的依赖项目,默认情况下不会这样做。 :右键单击解决方案(不在单个项目上)>属性>项目依赖性>在Project&中选择Web Project。根据具体情况检查Silverlight客户端项目。 >申请>确定。

(3)在Web项目属性中的Silverlight应用程序下重新添加Silverlight项目。 :右键单击Web项目>属性> Silverlight应用程序>点击添加&在Project下选择Silverlight Client Project。 :thumbsup:

答案 5 :(得分:2)

检查以确保Web服务器上已安装所有预先查询。我挣扎了4个多小时。网上的每个帖子都谈到了改变我没有做的命名空间。我最终决定在另一个网络服务器上试用我的应用程序,问题就消失了。

感谢所有人发布了他们的修复程序,但是如果所有的esle都失败了,请尝试另一台计算机或检查您的先决条件。

答案 6 :(得分:1)

当我去对象时出现错误 - >编辑样式 - >在“草图”样式对象上编辑副本。我把新风格放在新资源中。

当我删除这些样式时,错误就消失了。然后,我从头开始重新制作我想要的样式,而不是编辑副本,我没有得到错误。

答案 7 :(得分:1)

虽然这是一个老帖子,但同样的问题却占用了我几个小时的时间。上面给出的解决方案对我来说没有用。

通过为所有外部引用的程序集设置 Copy Local = True ,我已经解决了这个问题。

最初,visual studio为所有程序集设置Copy Local = True,但项目将开始从本地复制的程序集(bin \ debug)引用。为了让它引用公共位置,我设置了Copy Local = False,因此最终出现了这个问题。

希望这可以节省你的某些时间...

答案 8 :(得分:1)

这是我发现的另一个问题。 BasedOn样式的排序似乎很重要。

以下将导致WSOD的错误代码为2103。

<Style x:Key="Style2" TargetType="TextBlock" BasedOn="{StaticResource Style1}" />
<Style x:Key="Style1" TargetType="TextBlock" />

但这不会。

<Style x:Key="Style1" TargetType="TextBlock" />
<Style x:Key="Style2" TargetType="TextBlock" BasedOn="{StaticResource Style1}" />

花了很长时间才找到这个。看起来它实际上更像是XAML解释器如何工作的问题,但它很容易解决。

答案 9 :(得分:1)

我们在更改Wcf查询服务后遇到了问题。我们为所述Wcf服务添加了重载方法。像这样

    [OperationContract]
    int test(Guid id);

    [OperationContract]
    int test(Guid id, int id2);

运行应用程序时,它给了我们错误。当我们删除其中一种方法时,它运行得很好。把它归还错误也回来了。重命名一个解决了这个问题。

因此在Wcf中进行重载时非常引人注意。

答案 10 :(得分:0)

我最近也遇到了这个问题。我发现如果我在项目属性中重命名了程序集,它就不会更新应用程序HTML或ASPX文件。