出現原因
今天試圖將Silverlight程式進入點設為引用的類庫裡面的App.xaml,結果發現行不通,出現如下錯誤:
SCRIPT5022: Silverlight 應用程式中未處理的錯誤
代碼: 2103
類別: InitializeError
消息: 應用程式無效或格式不正確: 請查看清單
所謂的「程式清單」是指:AppManifest.xaml。位於專案的properties資料夾下有此檔的範本。一般出現此錯誤的原因是Silverlight找不到進入點了,就像C程式找不到main函數了。
結論
App.xaml只能設為主應用程式的,不能設為類庫的。準確的說應該是VS 2010不支援,只能手動打包XAP,把你包含入口App.xaml的dll放在<Deployment.Parts>第一行:

 

<Deployment xmlns="HTTP://schemas.microsoft.com/client/2007/deployment" xmlns:x="HTTP://schemas.microsoft.com/winfx/2006/xaml" EntryPointAssembly="SLLib" EntryPointType="SLLib.App" RuntimeVersion="5.0.61118.0">
<Deployment.Parts>
<AssemblyPart x:Name="SLLib" Source="SLLib.dll" />
<AssemblyPart x:Name="SLApp" Source="SLApp.dll" />
</Deployment.Parts>
</Deployment>

 

因為Silverlight自動尋找第一個程式集的進入點,而VS打包的xap,預設是把主應用程式設為第一個。
創作者介紹
創作者 shadow 的頭像
shadow

資訊園

shadow 發表在 痞客邦 留言(0) 人氣()