如何使.NET应用程序通过代理访问Internet

时间:2009-05-08 06:36:13

标签: c#

我有一个dll会从互联网上检索某些信息。我从我的包装器应用程序中调用这个dll。但是dll无法访问互联网,因为它背后是企业代理。有没有办法在包装器应用程序中进行身份验证,(例如通过提供输入代理用户名和密码的界面),以便dll可以访问互联网。

EDITED :: 我正在访问Google Data API dll,它接受用户名和密码登录。

3 个答案:

答案 0 :(得分:3)

您是否控制DLL中的代码? DLL如何请求信息? .NET肯定有WebClient和HttpWebRequest之类的代理处理,但你需要提供有关这种情况的更多信息。

编辑:不幸的是,我在GData API中看不到任何公开代理属性的内容。

您可以尝试使用GlobalProxySelection.Select设置默认代理。如果这不起作用,请告诉我,我会尝试在内部寻求建议。

答案 1 :(得分:1)

您可以将ProxyWebRequest对象的WebClient属性分配给已应用所需设置的WebProxy对象。它基本上如下工作:

WebRequest request = WebRequest.Create("http://www.mysite.com"); 
request.Proxy = new WebProxy("127.0.0.1", 8080); 

您还可以使用Credentials的{​​{1}}属性分配用户名/密码。

请参阅与WebProxy class on MSDN相关联的示例。

答案 2 :(得分:0)

GDATA Api使用您的全局IE代理,尝试使用包装器应用程序中所需的注册表项设置您的IE全局代理,GData api将自动选择它。