Microsoft VBScript 运行时错误 错误 '800a000d ' asp语句等解决

来源:百度知道 编辑:UC知道 时间:2024/07/04 10:41:26
上传数据时出现这个错误-------

Microsoft VBScript 运行时错误 错误 '800a000d'

类型不匹配: '[string: "&Ha1=%"]'

/asp/get.asp,行 16

-----------

下面是get.asp文件1到19行的代码,应该怎修改呢,再线等解决
--------------------------------
<!-- #include file="conn.asp"-->
<!-- #include file="md5.asp"-->
<!--#include file="function.asp"-->
<%

str=request.ServerVariables("QUERY_STRING")
'strarr=split(str,"&cm=")
'strinfo=strarr(0)
'strcoml=strarr(1)
Function HexToStr(strHex)
Dim Length
Dim Max
Dim Str
Max = Len(strHex)
For Length = 1 To Max Step 4
Str = Str & Chr("&H" & Mid(strHex, Length, 4))
Next
HexToStr = Str
End function

在函数中,你的Str是字符型的,Chr()里面整型数字,将这个数字转换为对应的字符。
问题在于:"&H"是字符型!Mid(strHex,Length,4)的取值也是字符型!
Str = Str & "&H" & Chr(Cint(Mid(strHex, Length, 4)))
明白了?

楼主应该是写错了
Str = Str & Chr("&H" & Mid(strHex, Length, 4))
Chr 是指定的 ANSI 字符代码转换为字符
例如
Chr(65) 为A
楼主应该是想将其转换为字符串
应该使用 Cstr

这样的问题一般情况下就是写错了,改成这样看看:
<!-- #include file="conn.asp"-->
<!-- #include file="md5.asp"-->
<!--#include file="function.asp"-->
<%
str=request.ServerVariables("QUERY_STRING")
'strarr=split(str,"&cm=")
'strinfo=strarr(0)
'strcoml=strarr(1)
Function HexToStr(strHex)
Dim Length
Dim Max
Dim Str
Max = Len(strHex)
For Length = 1 To Max Step 4
Str = Str & "&H" & Chr(Cint(Mid(strHex, Length, 4)))
Next
HexToStr = Str
End function