views:

255

answers:

2

If I want to bypass a Network like 192.168.1.0/24 using webProxy is there any way?

WebProxy proxy = new WebProxy();

proxy.ByPassList = ???
+2  A: 

You cannot alter the bypass list after the proxy creation. Use the following constructor overloads:

Uri address = ...
proxy = new WebProxy(address, **true**);

true means "bypass on local", and should be enough for you needs if you are using a 192.168.1.0/24 subnet.

or if you want to add a custom list:

Uri address = ...
proxy = new WebProxy(address, true, new string[] {"192.168.1.1","intranet",...});
Sebastien LEBRETON
+2  A: 

You could set it up in Internet Explorer and then use

WebProxy proxy = (WebProxy) WebProxy.GetDefaultProxy(); Deprecated.

var iproxy = WebRequest.GetSystemWebProxy();
var url = new Uri("http://www.example.com");
var wp = new WebProxy();
wp.Credentials = iproxy.Credentials;
wp.Address = iproxy.GetProxy(url);

or you could try to add "192.\.168\.1\.*" to proxy.BypassList with something like

List<string> bypasslist = new List<string>(proxy.BypassList);
bypasslist.Add("192.\.168\.1\.*");
proxy.BypassList = bypasslist.ToArray();
Jonas Elfström
Thanks I was trying to fetch the Intenet Explorer Proxy Settings through registry (headbang) ... :-)
Tumbleweed
+1 butWarning 1 'System.Net.WebProxy.GetDefaultProxy()' is obsolete: 'This method has been deprecated. Please use the proxy selected for you by default.is there any alternative that you know?
Tumbleweed
Sorry, didn't know it was deprecated. I've had success with WebRequest.GetSystemWebProxy()
Jonas Elfström