用VB的inet控件获取网页内容,execute异步方法和openurl同步方法,遇到以下问题:1、用openurl同步方法访问http://search.cn.yahoo.com/search?p=mba时,即当   SearchUrl="http://search.cn.yahoo.com/search?p=mba"时,当程序执行到 LastResult = Inet1.OpenURL(CStr(SearchUrl), icString) 时会出现以下错误:实时错误'13'
类型不匹配但访问baidu、sogou、iask等搜索引擎则正常,如BAIDU的http://www.baidu.com/s?wd=mba2、用execute异步方法访问http://search.cn.yahoo.com/search?p=mba,当程序执行到stemp = Inet1.GetChunk(1024, icString) 时会出现以下错误:实时错误'13'
类型不匹配但访问baidu、sogou、iask等搜索引擎则正常,如BAIDU的http://www.baidu.com/s?wd=mba请高手指点是怎么回事?
---------------------程序代码--------------------
'访问相应的URL获得结果放到LastResult字符串,
Private Sub SearchNow(SearchUrl)
    SearchError = 0
    LastResult = ""
    Inet1.Protocol = icHTTP
    
    If IsConnYiBu = 1 Then
        '异步方法
        Inet1.Execute CStr(SearchUrl), "GET"
        While Inet1.StillExecuting
            DoEvents
        Wend
    Else
        '同步方法
        LastResult = Inet1.OpenURL(CStr(SearchUrl), icString)
    End If
End SubPrivate Sub Inet1_StateChanged(ByVal State As Integer)
    Dim stemp As String
    If IsConnYiBu = 1 Then
        Select Case State
        Case 12
            stemp = Inet1.GetChunk(1024, icString)
            While Len(stemp) <> 0
                LastResult = LastResult & stemp
                stemp = Inet1.GetChunk(1024, icString)
            Wend
        Case 11
            LastResult = ""
        End Select
    End If
End Sub

解决方案 »

  1.   

    GETCHUNK需要返回的是变体数据。不能用STRING接收。
      

  2.   

    看到很多实例,要么就是用 Inet1.GetChunk(1024,0),要么就是用 Inet1.GetChunk(1024, icString)究竟应该怎么写呢?
      

  3.   

    看你的目标文件的内容确定是ICSTRING还是BINARY
      

  4.   

    将网页内容放到LastResult变量,要进行字符串的分析和处理。
      

  5.   

    但当获取网页http://search.cn.yahoo.com/search?p=mba 的内容的时候就出现以下错误:实时错误'13'
    类型不匹配错误位置:stemp = Inet1.GetChunk(1024, icString)