Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在C#应用程序中使用代理_C#_Proxy_Browser_Webbrowser Control - Fatal编程技术网

如何在C#应用程序中使用代理

如何在C#应用程序中使用代理,c#,proxy,browser,webbrowser-control,C#,Proxy,Browser,Webbrowser Control,我正在使用Microsoft Visual Studio 2010 C#.net 4.0 我有一个webbrowser元素。我想做的是使用代理通过Webbrowser元素进行导航。我该怎么做?谢谢。请查看此链接。您可以轻松地为web请求设置代理,但WebBrowser类与iexplore.exe共享设置。。。如果需要,可以通过编程方式更改IE注册表值来调整代理设置,然后再将其更改回来(请参见brendan的答案) 浏览器控件只是IE的一个实例-它将使用IE的代理设置。如果必须在代码中进行设置,则

我正在使用Microsoft Visual Studio 2010 C#.net 4.0


我有一个webbrowser元素。我想做的是使用代理通过Webbrowser元素进行导航。我该怎么做?谢谢。

请查看此链接。您可以轻松地为web请求设置代理,但WebBrowser类与iexplore.exe共享设置。。。如果需要,可以通过编程方式更改IE注册表值来调整代理设置,然后再将其更改回来(请参见brendan的答案)


浏览器控件只是IE的一个实例-它将使用IE的代理设置。如果必须在代码中进行设置,则可以通过使用注册表项来设置

        string key = "Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings";
        string serverName = "";//your proxy server name;
        string port = ""; //your proxy port;
        string proxy = serverName + ":" + port;

        RegistryKey RegKey = Registry.CurrentUser.OpenSubKey(key, true);
        RegKey.SetValue("ProxyServer", proxy);
        RegKey.SetValue("ProxyEnable", 1);
见此:


更新:看起来这只能针对控件而不是整个机器进行。有关仅为单个进程设置代理的信息,请参见此代码示例-

+1。我如何订阅此主题?@jp2code,这就是问题上向上/向下箭头下方的星星的用途。点击它。这会改变整个计算机注册表。我只想更改webbrowser元素注册表:(当我执行此firefox等操作时,所有内容都使用该代理。此解决方案有效,谢谢:)