在C#中以编程方式设置浏览器代理设置

我正在编写一个Winforms应用程序,该应用程序需要设置Internet Explorer的代理设置,然后打开一个新的浏览器窗口。此刻,我通过进入注册表来应用代理设置:


RegistryKey registry = Registry.CurrentUser.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", true);

registry.SetValue("ProxyEnable", 1);

registry.SetValue("ProxyServer", "127.0.0.1:8080");

是进入注册表的最佳方法,还是有更推荐的方法?如果有替代解决方案,我想避免注册表更改。


慕桂英3389331
浏览 646回答 3
3回答

慕标5832272

这在某种程度上取决于您的确切需求。如果您正在编写C#应用程序,并且只想设置应用程序将使用的默认代理设置,请使用System.Net.GlobalProxySelection类(http://msdn.microsoft.com/zh-cn/library/system.net .globalproxyselection.aspx)。您还可以为与System.Net.WebProxy(http://msdn.microsoft.com/zh-cn/library/system.net.webproxy.aspx)的任何特定连接设置代理。如果您实际上想更新注册表中的代理设置,我相信您将需要使用P / Invoke来调用WinAPI函数WinHttpSetDefaultProxyConfiguration(http://msdn.microsoft.com/zh-cn/library/aa384113。 aspx)。
打开App,查看更多内容
随时随地看视频慕课网APP