小编典典

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

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");

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


阅读 341

收藏
2020-05-19

共1个答案

小编典典

这在某种程度上取决于您的确切需求。如果您正在编写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)。

2020-05-19