- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我开发了一个嵌入在 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 位机器上自动更新。
最佳答案
你可以尝试这样的事情,虽然我在 XAPs 而不是 XBAPs 中使用它它可能也适用于你:
(以下是片段)
public partial class App : Application
{
/// <summary>
/// Creates a new <see cref="App"/> instance.
/// </summary>
public App()
{
Application.Current.CheckAndDownloadUpdateAsync();
// rest of code
编辑
本来建议在发布之间增加版本号,但似乎已经解决了。这种行为是否发生在所有浏览器上?可能是一些特定于 IE 的错误/奇怪(我已经看到很多仅 IE 的不当行为......不会让我感到惊讶)
关于c# - 如何在客户端计算机上将 XBAP 更新到最新版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5912711/
我是一名优秀的程序员,十分优秀!