我想在本地硬盤上存在的html文件中託管遠程Silverlight小部件,但每當我打開html文件時,Silverlight內容都不會顯示出來。如果我將文件移動到一個Web服務器,然後通過http訪問它,它可以很好地工作。我想出了(或者至少我假設)這個小部件正在嘗試撥打回Web服務器,但由於SL 2+中的cross zone restrictions而失敗。我還看到一些用戶在從本地文件進行調試時討論遇到此問題的報告。我的問題是,我怎麼能確定這是問題所在?我可以用什麼工具來驗證我的假設?從本地文件系統託管Silverlight小部件
此外,(有充分的瞭解,有特權安全問題需要考慮的提升)是否有任何方式可以將窗口小部件稱爲安全的Web服務聲明爲安全(例如添加到受信任的站點) Silverlight能夠在沒有安全異常的情況下執行調用的方式?
我說的是一個小部件的下面是一個例子:
<object
type="application/x-silverlight-2"
data="data:application/x-silverlight-2,"
width="400" height="400">
<param name="minRuntimeVersion" value="3.0.40624.0" />
<param name="background" value="#141414" />
<param name="splashScreenSource"
value="http://memorabilia.hardrock.com/Widget/3.2009.1014.0/Splash.xaml" />
<param name="source"
value="http://memorabilia.hardrock.com/Widget/3.2009.1014.0/HardRock.Memorabilia.Silverlight.Widget.xap" />
<param name="enableHtmlAccess" value="true" />
<param name="initParams" value="item=034739" />
<a href="http://go.microsoft.com/fwlink/?linkid=149156&v=3.0.40624.0">
<img src="http://memorabilia.hardrock.com/Widget/3.2009.1014.0/Ping.gif?type=install&item=034739"
style="background:#141414
url(http://content.memorabilia.hardrock.com/Assets/Images/widget/034739.jpg)
no-repeat center;margin:0;padding:0;border:0;"
width="400" height="400" />
</a>
</object>
此Silverlight控件是否允許您在自己的本地文件中託管? IOW,是你的還是你有權使用它? – slugster 2010-01-08 22:29:12
不提交作爲答案,因爲我不確定,但你有沒有看過「客戶端訪問策略」文件? http://www.silverlighttutorials.com/?p=148 – Sapph 2010-01-08 22:29:54
Silverlight控件不是我的控件。在上面的示例中,它由memorabilia.hardrock.com託管,並由它們作爲包含嵌入代碼的小部件提供。他們確實允許跨域調用(我在http://hardrock.com/crossdomain.xml找到了客戶端訪問策略文件,並且當我只是在web服務器上拋出測試html文件時,按預期下載了內容),但是從文檔這看起來像是跨區域調用的更多問題,而且我還沒有看到配置它的方法。 – Joel 2010-01-11 12:38:51