【问题标题】:I can't use websocket inside .net (vb.net) webbrowser control我不能在 .net (vb.net) webbrowser 控件中使用 websocket
【发布时间】:2014-02-19 11:57:33
【问题描述】:

我正在尝试在 Webbrowser 控件中运行一个网页,该控件包含与 Websocket 的连接。控件无法连接到 Websocket。 当我在 IE 中测试时,一切正常,但是在 Visual Studio 中的 Webbrowser 控件中,页面无法连接到 Websocket。 我尝试了其他包含检测浏览器对 Websockets 支持的脚本的页面,当它在 IE 中运行时,页面显示 Websocket 运行成功,但是当我尝试在 Webbrowser 控件上运行同一页面时,页面显示 webcontrol 可以不要跑。我该怎么做才能解决这个问题? 非常感谢。

【问题讨论】:

  • 不完全确定其相关性,但您使用的是哪个版本的 .net/vs?
  • 我在 Windows 7 上使用 Visual Studio 2013 和 Internet Explorer 11
  • 好的,希望我的回答能够为您指明正确的方向。

标签: .net vb.net websocket webbrowser-control


【解决方案1】:

问题在于,webbrowser 控件在使用本地 IE 作为基础时,默认情况下更加锁定(或者说“不同配置”更好)。

对此进行控制的能力称为功能控制,您可以在 MSDN here 上了解它

在解决您的实际问题方面,this answer 中提供的代码解决了与 C# 上的等效问题类似的问题。还要注意subsequent answer 中的调整。

【讨论】:

  • 乔恩,非常感谢。此解决方案适用于安装了正确框架的任何 Windows 版本?
  • 我认为它应该在底层 IE 安装也支持 websockets 的情况下工作 - 例如,你不会让 websockets 在运行 IE9 的 Windows 上工作。
  • 完美,有效!谢谢乔恩,非常非常感谢。上帝保佑你。
  • 是否可以让 .Net Webbrowser 控件呈现表单元素,如按钮、输入文本,以及 winform 元素的外观?使用 OS 的视觉样式看起来像原生 Windows 应用程序而不是 IE 中显示的页面?
  • 这值得一个单独的问题。为什么不在这里问它并在 cmets 中发布一个链接,以便我们找到它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-18
  • 2011-05-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多