输入mdb数据库即可将打包的mdb文件解包

时间:2022-06-01 21:07:14

好多直接在服务器上将所有文件包括程序,图片等文件封装到mdb,就需要下面这个文件了

  1. Dim rs, ws, fso, conn, stream, connStr, theFolder  
  2. Set rs = CreateObject("ADODB.RecordSet")  
  3. Set stream = CreateObject("ADODB.Stream")  
  4. Set conn = CreateObject("ADODB.Connection")  
  5. Set fso = CreateObject("Scripting.FileSystemObject")  
  6. dbname=inputbox("请输入数据库名称,数据库必须和本程序在同一目录","mc打包解压脚本")  
  7. connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&dbname&";"  
  8.  
  9. conn.Open connStr  
  10. rs.Open "select * from [filedata]", conn, 1, 1  
  11. stream.Open  
  12. stream.Type = 1  
  13.  
  14. On Error Resume Next  
  15.  
  16. Do Until rs.Eof  
  17. theFolder = Left(rs("path"), InStrRev(rs("path"), "\"))  
  18. If fso.FolderExists(theFolder) = False Then  
  19. createFolder(theFolder)  
  20. End If  
  21. stream.SetEos()  
  22. stream.Write rs("file")  
  23. stream.SaveToFile str & rs("path"), 2  
  24. rs.MoveNext  
  25. Loop  
  26.  
  27. rs.Close  
  28. conn.Close  
  29. stream.Close  
  30. Set ws = Nothing  
  31. Set rs = Nothing  
  32. Set stream = Nothing  
  33. Set conn = Nothing  
  34.  
  35. Wscript.Echo "所有文件释放完毕!"  
  36.  
  37. Sub createFolder(path)  
  38. Dim i  
  39. i = Instr(path, "\")  
  40. Do While i > 0  
  41. If fso.FolderExists(Left(path, i)) = False Then  
  42. fso.CreateFolder(Left(path, i - 1))  
  43. End If  
  44. If InStr(Mid(path, i + 1), "\") Then  
  45. i = i + Instr(Mid(path, i + 1), "\")  
  46. Else  
  47. i = 0  
  48. End If  
  49. Loop  
  50. End Sub