我开发了一个嵌入在ASP.NET网页中的XAML浏览器应用程序(XBAP).我在客户端计算机上更新最新版本的XBAP时遇到问题.在开发过程中,我不得不使用Mage.exe工具清除应用程序缓存,以便在我的本地计算机上运行时可以看到我的更改.除了Mage.exe -cc在命令行中执行外,我还发现rundll32 dfshim CleanOnlineAppCache它也能正常工作.
但是,我不想让客户在命令行中运行任何命令.我需要做些什么才能使XBAP在客户端计算机上自动更新?先前版本的XBAP将继续运行,而不是在客户端计算机上刷新更新的XBAP.
更新
我在这个问题上创造了一笔赏金,因为我有同样的问题.根据我在线阅读的内容,XBAP应该将缓存版本#与网络服务器上的版本#进行比较,如果不同则下载新版本.我已经验证我的版本号不同,但缓存的副本仍然是我启动XBAP时运行的副本.
如果我在asp.net页面之外启动XBAP,也会出现缓存副本,但如果我更改了url参数,我会得到新版本.
更新#2
我发现XBAP会在XP 32位计算机上自动更新,但不能在我的Windows 7 64位计算机上自动更新.