昨天我刚刚将一个WPF WebBrowser控件添加到了一个新的从头创建的WPF应用程序中。但是使用" http://www.google.de"调用导航方法例如,导致"导航已取消"控件中的错误消息。首先,我完全禁用了我的防火墙但没有改变。我检查了IE互联网选项的孤立代理配置,但没有配置代理。大约一个小时后,我启动了HTTP代理工具fiddler来检查HTTP请求是否到达fiddler,或者请求是否在到达之前失败。并且惊讶:请求到达提琴手并且网站被打开。我检查了所有我知道的代理设置的双倍和四倍:
使用WebClient.DownloadString的新创建的控制台应用程序可以正常工作!所以我认为这不是全局配置错误的.NET Framework的问题。所有其他已安装的浏览器,如IE,Firefox,Chrome等,都可以在没有fiddler启动的情况下工作!
要完全确定没有为我的进程启用代理,我已从WPF应用程序进程中读取了注册表中的Internet选项,但未设置ProxyServer / ProxyEnabled:
请帮帮我!我完全被难过了!
来自德国的问候,
托拜厄斯
答案 0 :(得分:2)
“WPF Web浏览器”实际上只是Internet Explorer Web浏览器对象的托管实例,因此,默认情况下,它采用系统的代理设置。值得注意的是,它不采用.NET代理配置设置,因此*.config
文件中没有一个应该是相关因素。
退后一步:
HTTPS
或仅HTTP
时,您是否遇到此问题? http://127.0.0.1:8888/
,会发生什么?http://www.bayden.com/dl/dotnetbrowser.exe
它是否表现出相同的行为?答案 1 :(得分:0)
我绝对相信我的防火墙不是问题所在。这真的很尴尬。我只将防火墙设置为"允许与规则不匹配的出站连接"。实际上有一个旧的孤立规则阻止了我的申请。 Fiddler只是将其注册为系统代理而未被阻止。我很伤心:真的很尴尬: - (
答案 2 :(得分:-1)
使用Uri参数进行导航。例: 导航(新的Uri(" http://www.google.de"));