1

我有一个在 Windows 7 (x86) 上运行的 .NET 应用程序(WPF,但这并不重要)。我想从我的应用程序连接到 Internet 以调用 Web 服务。当有wifi连接时,我想使用它。如果没有 wifi 连接,我想自动连接到操作系统中定义的 GPRS 连接设置(例如,在 Internet Explorer 的连接设置中)。

在拨号的年代,IE中既可以指定LAN连接,也可以指定拨号连接,当IE检测到没有LAN时,会询问是否要连接拨号。

在这种情况下,我使用 wifi 而不是 LAN,使用 GPRS 而不是拨号,而且我使用的不是 IE,而是一个自定义的 .NET 应用程序。用操作系统对话框提示用户就可以了。

我可以自己使用托管 wlan API (codeplex) 和 GPRS 芯片组制造商的 SDK 来执行此操作,但我想知道 Windows 7 是否可以为我执行此操作。

4

1 回答 1

2

使用 WebRequest 上可用的 DefaultWebproxy。DefaultWebProxy 属性从 app.config 文件中读取代理设置。如果没有配置文件,则使用当前用户的 Internet Explorer (IE) 代理设置。

对于 Ex-

webRequest.Credentials = CredentialCache.DefaultCredentials;
                    if (WebRequest.DefaultWebProxy != null)
                    {
                        webRequest.Proxy = WebRequest.DefaultWebProxy;
                        webRequest.Credentials = CredentialCache.DefaultCredentials;
                        webRequest.Proxy.Credentials = CredentialCache.DefaultNetworkCredentials;
                    }
                    else
                    {
                        Trace.WriteLine("Unable to detect proxy.");
                    }

查看这些链接 -

  1. http://msdn.microsoft.com/en-us/library/5t9y35bd.aspx
  2. http://msdn.microsoft.com/en-us/library/system.net.webrequest.defaultwebproxy.aspx
  3. http://msdn.microsoft.com/en-us/magazine/cc300743.aspx
于 2010-09-29T20:11:34.057 回答