我開發了嵌入在ASP.NET網頁中的XAML瀏覽器應用程序(XBAP)。我在獲取最新版本的XBAP以在客戶端計算機上更新時遇到問題。在開發過程中,我不得不使用Mage.exe工具清除應用程序緩存,以便在我的本地計算機上運行時看到我的更改。除了在命令行中執行Mage.exe -cc
之外,我還發現rundll32 dfshim CleanOnlineAppCache
也可以正常工作。如何在客戶端計算機上將XBAP升級到最新版本?
但是,我不想讓客戶在命令行中運行任何命令。爲了使XBAP在客戶端計算機上自動更新,我需要做些什麼?而不是客戶端計算機上更新的XBAP刷新,先前版本的XBAP將繼續運行。
更新
我創建了一個賞金對這個問題,因爲我有同樣的問題。從我在線閱讀的內容來看,XBAP應該將緩存的版本#與Web服務器上的版本#進行比較,如果不同,請下載新版本。我已驗證我的版本號是不同的,但緩存副本仍然是啓動XBAP時正在運行的副本。
如果我在asp.net頁面之外啓動XBAP,也會出現緩存副本,但如果更改url參數,我會得到新版本。
更新#2
我發現XBAP並自動對XP 32位機器更新,但不是我的Windows 7 64位計算機上。
該方法似乎並不存在於我用IE,FireFox和Chrome測試的XBAP – Rachel 2011-11-03 15:50:14
中,並且它們都無法下載新版本。 – Rachel 2011-11-04 18:30:53
[CheckAndDownloadUpdateAsync](http://msdn.microsoft.com/en-us/library/system.windows.application.checkanddownloadupdateasync(v = vs.95).aspx)似乎是僅Silverlight的函數,而不是WPF/XBAP。針對WPF的 – 2012-02-13 19:04:22