asp利用FSO检测服务器空间文件夹大小
<style type="text/css">
* {margin:0;padding:0;font-size:12px;}
body {padding:15px;}
.size1 {font-weight:bold;color:#f00;}
.size2 {font-weight:bold;color:#00f;}
</style>
<%
Sub ShowSpaceInfo(drvpath)
dim fso,d,size,showsize
set fso=server.createobject("scripting.filesystemobject")
drvpath=server.mappath(drvpath)
set d=fso.getfolder(drvpath)
size=d.size
showsize=size & " Byte"
if size>1024 then
size=(size\1024)
showsize=size & " KB"
end if
if size>1024 then
size=(size/1024)
showsize=formatnumber(size,2) & " MB"
end if
if size>1024 then
size=(size/1024)
showsize=formatnumber(size,2) & " GB"
end if
response.write "<span class='size1'>" & showsize & "</span>"
End Sub
Sub Showspecialspaceinfo(method)
dim fso,d,fc,f1,size,showsize,drvpath
set fso=server.createobject("scripting.filesystemobject")
drvpath=server.mappath("pic")
drvpath=left(drvpath,(instrrev(drvpath,"\")-1))
set d=fso.getfolder(drvpath)
if method="All" then
size=d.size
elseif method="Program" then
set fc=d.Files
for each f1 in fc
size=size+f1.size
next
end if
showsize=size & " Byte"
if size>1024 then
size=(size\1024)
showsize=size & " KB"
end if
if size>1024 then
size=(size/1024)
showsize=formatnumber(size,2) & " MB"
end if
if size>1024 then
size=(size/1024)
showsize=formatnumber(size,2) & " GB"
end if
response.write "<span class='size2'>" & showsize & "</span>"
end sub
Function Drawbar(drvpath)
dim fso,drvpathroot,d,size,totalsize,barsize
set fso=server.createobject("scripting.filesystemobject")
drvpathroot=server.mappath("pic")
drvpathroot=left(drvpathroot,(instrrev(drvpathroot,"\")-1))
set d=fso.getfolder(drvpathroot)
totalsize=d.size
drvpath=server.mappath(drvpath)
set d=fso.getfolder(drvpath)
size=d.size
barsize=cint((size/totalsize)*400)
Drawbar=barsize
End Function
Function Drawspecialbar()
dim fso,drvpathroot,d,fc,f1,size,totalsize,barsize
set fso=server.createobject("scripting.filesystemobject")
drvpathroot=server.mappath("pic")
drvpathroot=left(drvpathroot,(instrrev(drvpathroot,"\")-1))
set d=fso.getfolder(drvpathroot)
totalsize=d.size
set fc=d.files
for each f1 in fc
size=size+f1.size
next
barsize=cint((size/totalsize)*400)
Drawspecialbar=barsize
End Function
%>
系统空间的使用情况<br>
<%
fsoflag=1
if fsoflag=1 then
Function GetPP
dim s
s=Request.ServerVariables("path_translated")
GetPP=left(s,instrrev(s,"\",len(s)))
End function
if sPP="" then sPP=GetPP
if right(sPP,1)<>"\" then sPP=sPP&"\"
set fso=server.createobject("scripting.filesystemobject")
Set f = fso.GetFolder(sPP)
Set fc = f.SubFolders
i=1
i2=1
For Each f in fc
%>
目录<b><%=f.name%></b>占用空间:
<div class="sizediv" style="width:<%=drawbar(""&f.name&"")%>px;"></div><%showSpaceinfo(""&f.name&"")%><br>
<%
i=i+1
if i2<10 then
i2=i2+1
else
i2=1
end if
Next
%>
程序文件占用空间:
<div class="sizediv" style="width:<%=drawspecialbar%>px;"></div><%showSpecialSpaceinfo("Program")%><br>
系统占用空间总计:
<div class="sizediv" style="width:400px;"></div><%showspecialspaceinfo("All")%>
<%
else
response.write "本功能已经被关闭"
end if
%>
<style>
.sizediv {height:10px;background:#91d65c;border-left:solid 2px #91d65c;}
</style>