我做的程序直接连接服务器的连接如下:
string strConnection = "server='10.10.200.21';uid='saveEnergy';pwd='saveEnergySJZDST';database='saveEnergy'";
              SqlConnection objConnection = new SqlConnection(strConnection);
            return objConnection;
现在用户是用代理服务器上网的,代理服务器需要手工设置(就像IE需要在连接-局域网设置-代理器中的那样),
怎么用C#穿透代理服务器呢?在网上找了一些资料,但是不明白 放到哪里呢,请大家帮帮忙1.获取IE当前缺省的代理服务器信息(物理上其实存储在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\的ProxyEnable和ProxyServer),地址和端口号可以获取,但用户名和密码还是必须通过设置来获取
2.设置WebRequest的Proxy属性,绑定到有效的Proxy对象
我自己封装了一个方法,无论是直接连接还是通过代理服务器都可以自适应:
        public static void ProxySetting(WebRequest request)
        {
            WebProxy proxy = WebProxy.GetDefaultProxy();//获取IE缺省设置
     //如果缺省设置为空,则有可能是根本不需要代理服务器,如果此时配置文件中也未配置则认为不需Proxy
     if (proxy.Address == null && Sys.ProxyAddress != null && Sys.ProxyAddress != "")
                proxy.Address = new Uri(Sys.ProxyAddress);//按配置文件创建Proxy 地置
            if (proxy.Address != null)//如果地址为空,则不需要代理服务器
            {
                proxy.Credentials = new NetworkCredential(Sys.ProxyUser, Sys.ProxyKey);//从配置封装参数中创建
                request.Proxy = proxy;//赋予 request.Proxy 
            } 
        }
 
调用:
 request = (HttpWebRequest)WebRequest.Create(http://abc.com/def.xml);
                ProxySetting(request);//加在获取响应前
                request.GetResponse();
配置文件可能如下,读回后被Sys封装:
    <add key="ProxyAddress" value="" />
    <add key="ProxyUser" value="msuser" />
    <add key="ProxyKey" value="hello" />
 

解决方案 »

  1.   

    http connect
    http get
    socks4
    socks5自己用 socket 实现这些协议, 网上搜搜, 有的参照
      

  2.   

    是不是这样的问题无法解决呀 唉 看来C/S下的程序,问题太多了 不如选B/S呀
      

  3.   

    C/S 下客户如果必须通过代理访问数据库服务器的话, 最简单是用代理软件, ,比如 NetCAP之类的。。
    还有 SQL 连接串里允许配置 代理信息的。。 
      

  4.   

    我想通过   WebProxy proxy = WebProxy.GetDefaultProxy();//获取IE缺省设置 
                proxy.Address()获得代理服务器的IP地址和端口号
    然后在sql连接串里配置,如果配置呢,请高手指点 
         
      

  5.   

    sql server 的网络连接支持使用代理否?
    这个不清楚, 你可以查一下.不过把数据库通过这种方式暴露出来, 是很严重的安全隐患.
      

  6.   

    用第三方软件试一试吧 比如:Permeo Premium Agent