ASP上传/传输图像

我有一个ASPnetworking服务,允许各种用户把一些数据放在数据库中,并上传一些图片。 由于用户具有不同的网站,Web服务将图像上传到自己空间的第一个目录中,然后调用位于用户域中的ASP网页,将path传递给图像(正确存储),如下所示:

MResponseBackAsp(Session("Dominio") & "trasferisci.asp?nomefile=" & Session.SessionID & "-" & name) 

所以,这里出现麻烦,我收到以下消息:

 Microsoft VBScript runtime error '800a0005' Invalid procedure call or argument /trasferisci.asp, line 28 Si è verificato un errore nel salvataggio dell'immagine 

相对于该行的代码进行了评论:

 <% nomeFile = Request("nomefile") Dim lStato Dim objHTTP Dim strDataIn 'Randomize() Set objHTTP = CreateObject("Microsoft.XMLHTTP") objHTTP.Open "GET", "http://URL/" & nomeFile, False objHTTP.Send lStato= objHTTP.Status strDataIn= objHTTP.ResponseBody 'Binario Set objHTTP = Nothing If (lStato<>200) Or (Err.Number<>0) Then problema = "Errore " & lStato & " o " & Err.Description & "." End If newNomeFile = right(nomeFile,len(nomeFile)-instr(nomeFile,"-")) fileDaSalvare = Server.mapPath(Application("news_immagini") & newNomeFile) Set objFSO = Server.CreateObject("Scripting.FileSystemObject") If objFSO.FileExists(fileDaSalvare) Then objFSO.DeleteFile(fileDaSalvare) Set objFl = objFSO.CreateTextFile(fileDaSalvare, true) objFl.Write BinaryToString(strDataIn) objFl.Close() Set objFl = Nothing Set objFSO = Nothing Function BinaryToString(Binary) dim c1, c2, c3, p1, p2, p3 Dim L c1 = 1 : c2 = 1 : c3 = 1 L = LenB(Binary) Do While c1<=L p3 = p3 & Chr(AscB(MidB(Binary,c1,1))) c1 = c1 + 1 : c3 = c3 + 1 if c3>300 then p2 = p2 & p3 p3 = "" c3 = 1 c2 = c2 + 1 if c2>200 then p1 = p1 & p2 p2 = "" c2 = 1 End If End If Loop BinaryToString = p1 & p2 & p3 End Function Response.write "salvato" %> 

但最好的部分现在来:1)如果我们手动调用trasferisci.asp它工作; 2)如果我们刷新global.asa然后再运行一段时间

我看了一些地方,可能有一些问题,白色图像上传,问题在哪里? build议?

谢谢大家

PS(编辑):我已经在这里发布了这个问题,因为我们认为问题是进入系统,而不是代码。 如果不是,我道歉。

错误消息

Microsoft VBScript运行时错误“800a0005”
无效的过程调用或参数

而上传文件可能与服务器有关。 它可能不支持VBScript的一些新function。

也许它有一个旧的或过时的版本的Microsoft数据访问组件(MDAC)和/或VBScript。


顺便说一句,你不应该用这个

  Response.BinaryWrite() 

写二进制数据的方法 ?

此外,我会发出Response.Clear()并设置正确的HTTP响应头(根据文件的MIMEtypes): Response.ContentType = "..."

这是我们的防病毒GData的麻烦。 我们解决了这个问题,部分禁用了这个程序。 在下一个版本中,我们希望这将被修复。