gpt4 book ai didi

c# - “JSON”未定义

转载 作者:行者123 更新时间:2023-11-30 14:10:50 25 4
gpt4 key购买 nike

我正在尝试加载 Chromecast background website进入 c# WebBrowser但我得到: enter image description here

我认为这是因为网络浏览器默认使用 IE7(?),这可能无法很好地与网站中的 JS 配合使用。我尝试将注册表 FEATURE_BROWSER_EMULATION 更新为 9000,希望强制 webbrowser 使用 IE9 框架。但我仍然遇到同样的错误。

网络浏览器是否适合这项任务,或者是否有解决此问题的方法?

编辑:

因此,当我打印 webbrowser.version 时,我得到:版本:11.0.9600.16518。这是我当前使用的 IE 版本。如果我打开 IE11 并导航到 url,它的效果很好。不确定为什么 webbroswer 有问题。

我试图注入(inject) JSON Parser使用此代码进入网页:

HtmlDocument doc = webBrowser1.Document;
Console.WriteLine(doc);
HtmlElement head = doc.GetElementsByTagName("head")[0];
HtmlElement s = doc.CreateElement("script");
s.SetAttribute("type", "text/javascript");
s.SetAttribute("src", "http://192.168.1.23:10000/JSON-js-master/json2.js");
head.AppendChild(s);

我尝试使用引用主机文件的本地和外部 ips。似乎没有什么不同。

最佳答案

显然,WebBrowser控件运行时,运行在计算机上安装的IE版本中,但运行在IE7兼容模式下。尝试加载您列出的链接需要更现代的浏览器。事实上,您请求的页面需要IE10或更高版本。

您确实需要更改注册表中的浏览器仿真设置,以便 WebBrowser 控制用户使用更现代的 IE 功能集:

Internet Feature Controls

正如您在问题中所说,注册表中需要调整的两个区域是:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION

在这两个位置中的每一个位置,您的应用程序的进程名称都包含一个 DWORD 值集,指示兼容性级别。在 Internet Feature Controls 上可以找到具体值帮助页面。该文件的名称是您的应用程序的名称“MyApplication1.exe”,或者如果您从 Visual Studio 中运行,它是“MyApplication1.vshost.exe”。

因为我安装了 IE 11,所以我将浏览器仿真设置为 11001,它适用于您的链接网页。

关于c# - “JSON”未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22285763/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com