我不知道有没有人能给出这个建议。我们已经编写并实现了一个LOB Silverlight 3应用程序--我们目前正在一个客户站点对其进行测试。
我们遇到了这个问题,在站点上的一些机器上,浏览器随机崩溃。这些机器运行的是Windows XP SP3 --浏览器是火狐。
我们怀疑这可能是因为这些机器的浏览器似乎不可靠,因为他们安装了一些插件等,建议的解决方案是在浏览器外模式下实现应用程序。
我想知道的是,当Silverlight 3应用程序的浏览器耗尽时,它是否仍然依赖于后台的特定浏览器……或者,如果浏览器因为插件而“不稳定”,这会解决我们的问题吗?
发布于 2010-01-31 06:53:49
不是的。Silverlight OOB应用程序与安装时运行该应用程序的浏览器之间没有连接。一旦作为面向对象应用程序运行,Silverlight就会使用自己的ClientHTTP堆栈,而不再依赖于浏览器的HTTP堆栈。
假设不稳定是Firefox扩展的结果,那么在OOB中运行应用程序可能会有所帮助。但请记住,浏览器的HTTP堆栈可能会更高效,并且您会放松自动cookie处理。
发布于 2010-01-30 17:54:00
我正在努力寻找证据,但我很确定我记得我读过关于浏览器外使用Internet Explorer引擎的报道。
编辑
This post增强了我的记忆力。
如果您转到“检测网络连接和浏览器外状态”一节,并阅读最后一段,开始于“您可以使用本地消息传递在...之间进行通信”,则this article也暗示了同样的含义。
发布于 2010-01-31 14:18:30
如果silverlight在浏览器中崩溃,那么silverlight只有几个部分实际上依赖于浏览器的正确操作,比如对yes服务的调用必须通过浏览器的HTTP外观,也许太多来自服务器的响应由于滞后的UI而排队,这会导致崩溃,因为太多的响应试图一次触发UI更改的事件,我知道这不太可能,但这只是一个想法。
生命周期管理也是由浏览器处理的,插件可能试图回收silverlight进程并重新启动它。
尝试使用这个调试实用程序silverlight spy来找出问题的根源
https://stackoverflow.com/questions/2167445
复制相似问题