账号通
    

账号  

密码  

3243

查看

2

回复
主题:[求助]为什么我不能上传软件? [收藏主题]  
feiyang169 当前离线

8

主题

0

广播

0

粉丝
添加关注
级别:学前班

用户积分:216 分
登录次数:6 次
注册时间:2006/6/15
最后登录:2012/3/29
feiyang169 发表于:2006/6/18 15:03:00   | 只看该作者 查看该作者主题 楼主 
我的网站为什么不能上传软件?我装了上传组件的。现在就是连很小的flash也不能上传。错误提示是:

Request 对象 错误 'ASP 0104 : 80004005'

不允许操作

/admin/Dialog/Upfile.asp,行 44
我看了我的/admin/Dialog/Upfile.asp这个文件的代码,也没有发现问题,现在我把我的代码粘贴在这儿,请高手帮我看一下,谢谢了!
<%
Dim UpFileStream
Class UpFileClass
 Dim Form,File,Err
 Private Sub Class_Initialize
  Err = -1
 End Sub
 Private Sub Class_Terminate 
  '清除变量及对像
  If Err < 0 Then
   Form.RemoveAll
   Set Form = Nothing
   File.RemoveAll
   Set File = Nothing
   UpFileStream.Close
   Set UpFileStream = Nothing
  End If
 End Sub
 
 Public Property Get ErrNum()
  ErrNum = Err
 End Property
 
 Public Sub GetData ()
  '定义变量
  Dim RequestBinData,sSpace,bCrLf,sObj,iObjStart,iObjEnd,tStream,iStart,oFileObj
  Dim iFileSize,sFilePath,sFileType,sFormValue,sFileName
  Dim iFindStart,iFindEnd
  Dim iFormStart,iFormEnd,sFormName
  '代码开始
  If Request.TotalBytes < 1 Then  '如果没有数据上传
   Err = 1
   Exit Sub
  End If
  Set Form = Server.CreateObject ("Scripting.Dictionary")
  Form.CompareMode = 1
  Set File = Server.CreateObject ("Scripting.Dictionary")
  File.CompareMode = 1
  Set tStream = Server.CreateObject ("ADODB.Stream")
  Set UpFileStream = Server.CreateObject ("ADODB.Stream")
  UpFileStream.Type = 1
  UpFileStream.Mode = 3
  UpFileStream.Open
  UpFileStream.Write (Request.BinaryRead(Request.TotalBytes))
  UpFileStream.Position = 0
  RequestBinData=UpFileStream.Read
  iFormEnd = UpFileStream.Size
  bCrLf = ChrB (13) & ChrB (10)
  '取得每个项目之间的分隔符
  sSpace=MidB (RequestBinData,1, InStrB (1,RequestBinData,bCrLf)-1)
  iStart=LenB (sSpace)
  iFormStart = iStart+2
  '分解项目
  Do
   iObjEnd=InStrB(iFormStart,RequestBinData,bCrLf & bCrLf)+3
   tStream.Type = 1
   tStream.Mode = 3
   tStream.Open
   UpFileStream.Position = iFormStart
   UpFileStream.CopyTo tStream,iObjEnd-iFormStart
   tStream.Position = 0
   tStream.Type = 2
   tStream.CharSet = "gb2312"
   sObj = tStream.ReadText     
   '取得表单项目名称
   iFormStart = InStrB (iObjEnd,RequestBinData,sSpace)-1
   iFindStart = InStr (22,sObj,"name=""",1)+6
   iFindEnd = InStr (iFindStart,sObj,"""",1)
   sFormName = Mid  (sObj,iFindStart,iFindEnd-iFindStart)
   '如果是文件
   If InStr  (45,sObj,"filename=""",1) > 0 Then
    Set oFileObj = new FileObj_Class
    '取得文件属性
    iFindStart = InStr (iFindEnd,sObj,"filename=""",1)+10
    iFindEnd = InStr (iFindStart,sObj,"""",1)
    sFileName = Mid (sObj,iFindStart,iFindEnd-iFindStart)
    oFileObj.FileName = Mid (sFileName,InStrRev (sFileName, "\")+1)
    oFileObj.FilePath = Left (sFileName,InStrRev (sFileName, "\"))
    oFileObj.FileExt = Mid (sFileName,InStrRev (sFileName, ".")+1)
    iFindStart = InStr (iFindEnd,sObj,"Content-Type: ",1)+14
    iFindEnd = InStr (iFindStart,sObj,vbCr)
    oFileObj.FileType = Mid  (sObj,iFindStart,iFindEnd-iFindStart)
    oFileObj.FileStart = iObjEnd
    oFileObj.FileSize = iFormStart -iObjEnd -2
    oFileObj.FormName = sFormName
    File.add sFormName,oFileObj
   else
    '如果是表单项目
    tStream.Close
    tStream.Type = 1
    tStream.Mode = 3
    tStream.Open
    UpFileStream.Position = iObjEnd
    UpFileStream.CopyTo tStream,iFormStart-iObjEnd-2
    tStream.Position = 0
    tStream.Type = 2
    tStream.CharSet = "gb2312"
    sFormValue = tStream.ReadText
    If Form.Exists(sFormName)Then
     Form (sFormName) = Form (sFormName) & ", " & sFormValue
    else
     form.Add sFormName,sFormValue
    End If
   End If
   tStream.Close
   iFormStart = iFormStart+iStart+2
   '如果到文件尾了就退出
  Loop Until  (iFormStart+2) >= iFormEnd
  RequestBinData = ""
  Set tStream = Nothing
 End Sub
End Class

'----------------------------------------------------------------------------------------------------
'文件属性类
Class FileObj_Class
 Dim FormName,FileName,FilePath,FileSize,FileType,FileStart,FileExt
 '保存文件方法
 Public Function SaveToFile (Path)
  On Error Resume Next
  Dim oFileStream
  Set oFileStream = CreateObject ("ADODB.Stream")
  oFileStream.Type = 1
  oFileStream.Mode = 3
  oFileStream.Open
  UpFileStream.Position = FileStart
  UpFileStream.CopyTo oFileStream,FileSize
  oFileStream.SaveToFile Path,2
  oFileStream.Close
  Set oFileStream = Nothing
 End Function
 '取得文件数据
 Public Function FileData
  UpFileStream.Position = FileStart
  FileData = UpFileStream.Read (FileSize)
 End Function
End Class
%>

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
任我行 当前离线

6496

主题

191

广播

251

粉丝
添加关注
级别:管理员

用户积分:46050 分
登录次数:4182 次
注册时间:2006/4/26
最后登录:2024/11/21
任我行 发表于:2006/6/18 15:09:00   | 只看该作者 查看该作者主题 沙发 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
790214 当前离线

1145

主题

1

广播

0

粉丝
添加关注
级别:八年级

用户积分:6575 分
登录次数:616 次
注册时间:2006/5/8
最后登录:2022/7/27
790214 发表于:2006/6/18 23:01:00   | 只看该作者 查看该作者主题 藤椅 
科汛在线网校系统
以下是引用任我行在2006-6-18 15:09:04的发言:

2003系统,200k上传限制的问题

请查看

http://edu.kesion.com/server/webserver/3746908192.html

同意
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行0.09375秒 powered by KesionCMS 9.0