在c#webbrowser显示谷歌地球
问题描述:
因为有些日子谷歌地球可以通过浏览器,如边缘或internetexplorer直接可用。但是,如果在wpf中创建Webbrowser控件并导航到google.com/maps并单击“卫星视图”,则网站告诉我,Google地球视图不适用于我。 比较两种观点:
在c#webbrowser显示谷歌地球
图像可以在这里找到:
http://wb20.stedum-bekum.de/wp-content/uploads/2017/10/Webbrowser.png
http://wb20.stedum-bekum.de/wp-content/uploads/2017/10/IE.png
*的黄色矩形赛斯:不可用
3D视图在我的代码设置用户代理manuelly和更新它通过导航事件中的urlmon。
webbrowser.Navigate(new Uri("https://google.de/maps"), null, null, "User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv: 11.0) like Gecko \r\n");
和
[DllImport("urlmon.dll", CharSet = CharSet.Ansi)]
private static extern int UrlMkSetSessionOption(
int dwOption, string pBuffer, int dwBufferLength, int dwReserved);
const int URLMON_OPTION_USERAGENT = 0x10000001;
const int URLMON_OPTION_USERAGENT_REFRESH = 0x10000002;
public void ChangeUserAgent(string agent)
{
UrlMkSetSessionOption(URLMON_OPTION_USERAGENT_REFRESH, null, 0, 0);
UrlMkSetSessionOption(URLMON_OPTION_USERAGENT, agent, agent.Length, 0);
}
,我也改变了网页浏览器通过FEATURE_BROWSER_EMULATION
表现得像即没有任何人有一个想法如何使用它的web浏览器?
我也试过dotnetbrowser来整合。这工作了几天,但现在我得到相同的消息。
我也尝试过firefox,edge和chrome(我的代码之外),它们都像IE一样正常工作。
答
我发现了。对于任何需要相同的人,问题是Webbrowser硬件加速默认关闭。您可以在注册表中设置
FEATURE_GPU_RENDERING为1,statet这里
https://msdn.microsoft.com/en-us/library/ee330731(v=VS.85).aspx
无法查看你的图片 –
http://webkitdotnet.sourceforge.net/ – Ramankingdom
我上传的图像到第二个服务器 – Basti