日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
圖文介紹在瀏覽器外運(yùn)行Silverlight應(yīng)用

Silverlight3一個(gè)很顯著的特點(diǎn)就是其應(yīng)用可以在瀏覽器外運(yùn)行。就是說(shuō)一個(gè)在瀏覽器中運(yùn)行的應(yīng)用可以被獨(dú)立(detached)出來(lái),并通過(guò)一 個(gè)桌面和開(kāi)始菜單欄圖標(biāo)來(lái)啟動(dòng)執(zhí)行,而不在需要有網(wǎng)絡(luò)連接。這樣給人的感覺(jué)其就像一個(gè)普通的桌面應(yīng)用而不是一個(gè)瀏覽器應(yīng)用程序。

公司主營(yíng)業(yè)務(wù):成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)建站是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。創(chuàng)新互聯(lián)建站推出金華免費(fèi)做網(wǎng)站回饋大家。

為了實(shí)現(xiàn)獨(dú)立(detached),用戶必須對(duì)這類應(yīng)用有個(gè)明確的選擇:“該應(yīng)用在沒(méi)有用戶通知的情況下是不可以detached它自己的。下面用一 個(gè)例子“Hello World”來(lái)展示一下:

    
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation%22
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml%22Width="400" Height="300">

還有一些代碼:

public partial class MainPage : UserControl{public MainPage()   
{InitializeComponent(); OnExecutionStateChanged(null, null);
App.Current.ExecutionStateChanged += OnExecutionStateChanged; }
void OnExecutionStateChanged(object sender, EventArgs e)
{txtStatus.Text = App.Current.ExecutionState.ToString();}
void OnClicked(object sender, RoutedEventArgs args)    

{ App.Current.Detach();
}}

然后我們?cè)跒g覽器中運(yùn)行它并看到一個(gè)新的鼠標(biāo)右擊菜單:

  

其允許將該應(yīng)用獨(dú)立出來(lái)并安裝到本地。并且你會(huì)注意到,該菜單項(xiàng)是灰色的。同樣地,我們可以在按鈕事件中加入一些代碼并嘗試分離這 個(gè)應(yīng)用。void OnClicked(object sender, RoutedEventArgs args){      App.Current.Detach();} 但它并 沒(méi)有啟作用,因?yàn)橛益I菜單依舊是灰的.原因在于這個(gè)應(yīng)用沒(méi)有相應(yīng)的元數(shù)據(jù)支持。為了提供元數(shù)據(jù),我們要編輯一下 appmanifest.xml 文件 :

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">  
  
Mikes Application Blurb
icons/16x16.png
icons/32x32.png
icons/48x48.png
icons/128x128.png

注:上面這些圖標(biāo)文件必須在VS中以內(nèi)容"Content"的文件嵌入到XAP文件中。但我并不確保你也需要這里所有的文件,特別是這個(gè) "128x128"(文件);

這樣當(dāng)單擊鼠標(biāo)右鍵后該菜單項(xiàng)將會(huì)變成“有效”:

接著,我們前面創(chuàng)建的這個(gè)按鈕將會(huì)觸發(fā)一個(gè)對(duì)話框,提供給我們兩個(gè)選項(xiàng):“將這個(gè)要運(yùn)行在瀏覽器外的應(yīng)用安裝到桌面或開(kāi)始菜單中” 。

 注:那是個(gè)標(biāo)準(zhǔn)對(duì)話框,而通過(guò)使用我本人頭像設(shè)置的對(duì)話框是下面這個(gè)樣子

但我不打算這樣做,我想還是顯示標(biāo)準(zhǔn)對(duì)話框會(huì)好一些。

如果點(diǎn)擊該對(duì)話框后,該應(yīng)用會(huì)嘗試 detach 它自身。對(duì)我而言,它所做的工作就是確保本地XAP文件的有效性。而不是去嘗試把其它與它 相關(guān)聯(lián)的資源也獲取到本地。

    注:第二個(gè)應(yīng)用拷貝現(xiàn)在運(yùn)行在了窗體中,它與瀏覽器窗體還是有一些區(qū)別的。

    現(xiàn)在我在桌面上有了該應(yīng)用的一個(gè)圖標(biāo):

    并且在開(kāi)始菜單中也有:

    如果我從這兩個(gè)地方運(yùn)行這個(gè)應(yīng)用時(shí),會(huì)看到一個(gè)“非瀏覽器”的應(yīng)用:

    此時(shí)當(dāng)我在瀏覽器中運(yùn)行這個(gè)原始(版本)的應(yīng)用時(shí),它顯示了相同的“Detached”狀態(tài):

好的,現(xiàn)在我修改一下原應(yīng)用,將背景設(shè)置為"red":

然后再次運(yùn)行并發(fā)布這個(gè)新的XAP到WEB服務(wù)器上。起初,它顯示“Detached”,然后它切換到“DetachedUpdatesAvailable".這意味著可以 告訴用戶該應(yīng)用已被更新,并提示他們重啟該應(yīng)用:

     之后,將他們?cè)龠\(yùn)行該應(yīng)用時(shí),會(huì)獲取到新的版本(我更新到服務(wù)器上的那個(gè)版本):

     如果想刪除該應(yīng)用,可以在本地的“detached”拷貝或?yàn)g覽器中右擊菜單:

     如果我點(diǎn)擊上面菜單后,就會(huì)將開(kāi)始菜單和桌面圖標(biāo)移除,這樣在瀏覽器中該應(yīng)用的狀態(tài)就從“Detached”變 成了“RunningOnline”.

盡管 App.Current.ExecutionState屬性返回“Detached”,但這與你在瀏覽器或本地運(yùn)行該應(yīng)用是無(wú)關(guān)的。這是需要有另一個(gè)標(biāo)志來(lái)決定 該應(yīng)用是從瀏覽器還是從本地(分離)啟動(dòng)。

在Application中有一個(gè)標(biāo)志即“RunningOffline”,看上去它會(huì)返回true/false 狀態(tài)。True意味著當(dāng)前應(yīng)用是從本地獨(dú)立啟動(dòng)的,而 False則是在瀏覽器中啟動(dòng)的。

就當(dāng)前應(yīng)用實(shí)際運(yùn)行的代碼而言,當(dāng)其離線時(shí)(offline),存在一個(gè)進(jìn)程(文件位于:Program Files\Microsoft Silverlight\VERSION\sllauncher.exe).看上去它就是通過(guò)應(yīng)用名稱去運(yùn)行相應(yīng)程序。使用Reflector去瀏覽一下,發(fā)現(xiàn)其進(jìn)程好像是非托管的 運(yùn)行,因此我不認(rèn)為能從中能獲取一些內(nèi)部信息。但其值得一說(shuō)的是該launcher的roles之一就是保持應(yīng)用的上下文安全。即:如果應(yīng)用是從域 foo.com獲取,那么該應(yīng)用就必須本地化運(yùn)行。盡管它是從foo.com上啟動(dòng)(launched)的。

還有要注意的是這種detached在功能上貌似依賴于Isolated Storage(隔離)存儲(chǔ)。因?yàn)槲野l(fā)現(xiàn)當(dāng)把應(yīng)用“detached”時(shí),必須在打開(kāi) Isolated Storage,真是如此。

【編輯推薦】

  1. 走向銀光 —— 一步一步學(xué) Silverlight2
  2. 圖解Silverlight 3的7個(gè)新功能
  3. 用Silverlight 3的位圖API實(shí)現(xiàn)可寫(xiě)位圖

網(wǎng)頁(yè)名稱:圖文介紹在瀏覽器外運(yùn)行Silverlight應(yīng)用
分享URL:http://www.dlmjj.cn/article/cdcdgog.html