我收到了来自我的vb6程序的错误消息

时间:2010-04-18 09:23:03

标签: vb6

Private Sub Command1_Click()
  Dim dom As New DOMDocument
  Dim http As New XMLHTTP
  Dim strRet As String
  If Not dom.Load("c:\\CH.xml") Then MsgBox "文件不存在"
  http.Open "Post", "http://172.31.132.173/u8eai/import.asp", True '指定服务器ASP
  http.send dom.xml '把xml数据发送服务器端
  strRet = http.responseText 'strRet:返回的xml格式的回执信息
  MsgBox strRet
End Sub

错误讯息,中文: 实时错误 完成该操作所需的数据还不可使用。 由谷歌翻译(英文): 实时错误 完成操作所需的数据也不能使用

1 个答案:

答案 0 :(得分:1)

(“实时错误完成该操作所需的数据还不可使用”表示“运行时错误,此操作的数据尚不可用。”)

问题是您是以异步

的形式发出HTTP请求
http.Open "Post", "http://172.31.132.173/u8eai/import.asp", True

这意味着即使在服务器响应之前,send方法也会立即返回。

http.send dom.xml

但在服务器响应之前,您已经询问了responseText值。当然这会导致运行时错误。

strRet = http.responseText

一种解决方法是发出同步请求,即将http.open的第3个参数更改为False。更好的方法是设置http的处理程序来处理readyStateChange事件(请参阅doc以获取详细信息)。