public bool GetVerifyPic(ref string strPicUrl)
        {
            Stream responseStream = null;
            try
            {
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.ibc123.com/head.aspx");
                request.Method = "GET";
                request.KeepAlive = true;
                request.CookieContainer = new CookieContainer();
                request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET4.0C; .NET4.0E; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)";
                request.Headers.Add("Cookie", this.m_BaseInfo.strCookies);
                request.Proxy = null;
                 request.Referer = "http://www.ibc123.com/";
                request.AllowAutoRedirect = true;
                request.Timeout = this.m_nTimeOut;
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                responseStream = response.GetResponseStream();
                string strContext = new StreamReader(responseStream, Encoding.GetEncoding("utf-8")).ReadToEnd();
                response.Close();            }
            catch (Exception exception)
            {
                Console.WriteLine(exception.Message);
                if (responseStream != null)
                {
                    responseStream.Close();
                }
                return false;
            }
            return true;
        }Length = “responseStream.Length”引发了“System.NotSupportedException”类型的异常Position = “responseStream.Position”引发了“System.NotSupportedException”类型的异常   读取到的代码却是<script>window.top.location.href='index.aspx?'</script>  
我抓包也没错阿!!! 帮忙看下!!!! 我是想读取验证码!!! 我在做登陆的时候也是这个错误 

解决方案 »

  1.   

    request.KeepAlive = false;
    权限
      

  2.   

                Stream responseStream = null;
                try
                {
                    HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.ibc123.com/head.aspx");
                    request.Method = "GET";
                    request.KeepAlive = false;
               
                    request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET4.0C; .NET4.0E; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)";
                    request.Headers.Add("Cookie", this.m_BaseInfo.strCookies);
                    request.Proxy = null;
                    request.Referer = "http://www.ibc123.com/";
                    request.AllowAutoRedirect = true;
                    request.Timeout = this.m_nTimeOut;
                    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                    responseStream = response.GetResponseStream();
                    string strContext = new StreamReader(responseStream, Encoding.GetEncoding("utf-8")).ReadToEnd();
                    response.Close();            } 还是不可以啊!!!!   还有别的出错吗? 
      

  3.   

    Length和Position是不可用的
    不支持。
    你可以先下载完整的网页。再转换。操作。不能使用Length和Position的。只有本地的文件操作可以。同样,对于所有基于流设备驱动的Stream都不可以用这2个属性。例如串口的InnerStream
      

  4.   

    request.Method = "GET";
    改成request.Method = "POST";试试看
      

  5.   

    response的长度可替代  流   Length
      

  6.   


    webbrower读取数据看看   可以。。 但是 登录进球了, 读取到的是 框架。 。怎么读出 框架内的某个页面的数据了!!!
      

  7.   

    webBrowser1.Document.Window.Frames["xxxx"].Document.Body.InnerHtml