【发布时间】:2011-08-20 05:47:14
【问题描述】:
我开发了一个嵌入在 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 位机器上却没有。
【问题讨论】: