大家测试看看代码
安全不??:(:(:(:(:(
http://www.7765.com/mp3/以下代码可以随便改任意*.asp名字!
=========================================
<%@ LANGUAGE = VBScript %>
<%Server.ScriptTimeout=5000%>
声音文件 mp3.RM.RAM.WMV.ASF.WMA 无限目录读取下载系统!<%
okdir="E:\music\kevan\mp3"
'=============== 默 认 读 取 路 径 开 始 =====================
'_______________________{Power by kevanTM All Rights Reserved.}_________________________
bys=17
'=====安全路径保护字节限制,例如:[ E:\music\kevan\mp3 ]中共有18-1个字节=============
thisdir=Request("Path")
if thisdir="" or len(thisdir)
thisdir=okdir
end if
%>
<%
k=5
e=0
v=0
a=2
n=1
t=3
e=8
l=8
Response.Write""& vbCrLf
if Request.QueryString("mp3")<>"" then
FileName = Request.QueryString("mp3")
strFile=FileName
if FileName="" or len(FileName)<17 Then
Response.Write("错误:
无效文件名!请您不要乱提交参数路径!")
Response.End
End if
FileExt = Mid(FileName, InStrRev(FileName, ".") + 1)
Select Case UCase(FileExt)
Case "ASP", "ASA", "ASPX", "ASAX", "MDB"
Response.Write("
错误:
" & FileName & " KevanTM系统强行禁止您不许下载这个文件!")
Response.End
End Select
strFilename = strFile
Response.Buffer = True
Response.Clear
Set s = Server.CreateObject("ADODB.Stream")
s.Open
s.Type = 1
on error resume next
Set fso = Server.CreateObject("Scripting.FileSystemObject")
if not fso.FileExists(strFilename) then
Response.Write("
错误:
" & strFilename & " 该文件不存在于服务器里面!")
Response.End
end if
Set f = fso.GetFile(strFilename)
intFilelength = f.size
s.LoadFromFile(strFilename)
if err then
Response.Write("
错误:
" & err.Description & " 无数据流!")
Response.End
end if
Response.AddHeader "Content-Disposition", "attachment; filename=" & f.name
Response.AddHeader "Content-Length", intFilelength
Response.CharSet = "UTF-8"
Response.ContentType = "application/octet-stream"
Response.BinaryWrite s.Read
Response.Flush
s.Close
Set s = Nothing
response.end
end if
Set fs=Server.CreateObject("Scripting.FileSystemObject")
Set fdir=fs.GetFolder(thisdir)
response.write "
"
function getUpfoldersString(temp)
temps=StrReverse(temp)
temps=replace(temps,"/","\")
if right(temp,1)="\" or right(temp,1)="/" then
temps=replace(temp,"\","")
end if
temps=StrReverse(mid(temps,inStr(temps,"\")+1))
getUpfoldersString=temps
End function
if Request("Path")<>"" or len(Request("Path"))>bys then
response.write "| [ 点击这里返回上一级目录 ] 当前目录为:"&thisdir&" |
"
else
response.write "| [ 首 目 录 列 表 ] |
"
if right(thisdir,1)="\" or right(thisdir,1)="/" then
thisdir=replace(thisdir,"\","")
end if
end if
dim i
For each thing in fdir.SubFolders
Response.Write "| -------------------> [ " & thing.Name & " ] | 注释:" & thing.Name & "目录文件夹 |
"
Next
response.write "
"
Set fs=Server.CreateObject("Scripting.FileSystemObject")
Set fdir=fs.GetFolder(thisdir)
response.write ""
response.write "| 声音文件名称 | 体积大小 | 音频类型 |
"
dim strExt
For each thing in fdir.Files
response.write ""
'==================================读取.mp3文件格式===========================
strExt=lcase(right(thing.Name,4))
select case strExt
case ".mp3"
Response.Write "" & thing.Name & " | "
response.write "" & cstr(thing.size) & " | " & thing.type &"qq:"&k&""&e&""&v&""&a&""&n&""&t&""&e&""&l&"> | "
end select
'==================================读取.wma文件格式===========================
strExt=lcase(right(thing.Name,4))
select case strExt
case ".wma"
Response.Write "" & thing.Name & " | "
response.write "" & cstr(thing.size) & " | " & thing.type &" | "
end select
'==================================读取.wmv文件格式===========================
strExt=lcase(right(thing.Name,4))
select case strExt
case ".wmv"
Response.Write "" & thing.Name & " | "
response.write "" & cstr(thing.size) & " | " & thing.type & " | "
end select
'==================================读取.rm文件格式===========================
strExt=lcase(right(thing.Name,3))
select case strExt
case ".rm"
Response.Write "" & thing.Name & " | "
response.write "" & cstr(thing.size) & " | " & thing.type & " | "
end select
'==================================读取.asf文件格式===========================
strExt=lcase(right(thing.Name,4))
select case strExt
case ".asf"
Response.Write "" & thing.Name & " | "
response.write "" & cstr(thing.size) & " | " & thing.type & " | "
end select
'==================================读取.ram文件格式===========================
strExt=lcase(right(thing.Name,4))
select case strExt
case ".ram"
Response.Write "" & thing.Name & " | "
response.write "" & cstr(thing.size) & " | " & thing.type & " | "
end select
'==================================读取结束===================================
response.write "
"
Next
response.write "
"
response.write "
已经完成读取该< "&thisdir&" >目录里所有的声音文件,读取结束完毕!
"
set fs=nothing
%>
=========================================