Advertisement
Guest User

savefile.vbs

a guest
Jul 31st, 2017
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.11 KB | None | 0 0
  1. Dim args
  2. Set args=WScript.Arguments
  3.  
  4. If args.Count < 1 Then
  5. WScript.Quit
  6. End If
  7.  
  8. Dim objFS, objFile, filefullnameOri, filefullnameSav, dirfullnameOri, filenameOri, extOri, outfilefullname, c, o, s, os, ss, ns, dp, filesizeOri
  9. c = 0
  10. o = false
  11. s = false
  12. Do While c < args.Count
  13. Set objFS = CreateObject("Scripting.FileSystemObject")
  14. If objFS.FileExists(args(c)) Then
  15. Set objFile = objFS.GetFile(args(c))
  16. If objFile.Size = 32768 and Not s Then
  17. s = true
  18. filefullnameSav = args(c)
  19. Elseif objFile.Size > 32768 and Not o Then
  20. o = true
  21. filefullnameOri = args(c)
  22. dirfullnameOri = objFS.getParentFolderName(args(c))
  23. filenameOri = objFS.getFileName(args(c))
  24. dp = InStrRev(filenameOri, ".")
  25. If dp > 0 Then
  26. extOri = Mid(filenameOri, dp + 1)
  27. filenameOri = Mid(filenameOri, 1, dp - 1)
  28. Else
  29. extOri = ""
  30. End If
  31. filesizeOri = objFile.Size
  32. End If
  33. Else
  34. WScript.Quit
  35. End If
  36. Set objFile = nothing
  37. Set objFS = nothing
  38. c = c + 1
  39. Loop
  40.  
  41. If Not o Then
  42. WScript.Quit
  43. End If
  44.  
  45. If s Then
  46. outfilefullname = dirfullnameOri & "\" & filenameOri & "-new" & extOri
  47. Set ss = CreateObject("ADODB.Stream")
  48. ss.Type = 1
  49. ss.Open
  50. ss.LoadFromFile filefullnameSav
  51. ss.Position = 0
  52. Set ns = CreateObject("ADODB.Stream")
  53. ns.Type = 1
  54. ns.Open
  55. ns.Position = 0
  56. ns.Write ss.Read(32768)
  57. ss.Close
  58. Set os = CreateObject("ADODB.Stream")
  59. os.Type = 1
  60. os.Open
  61. os.LoadFromFile filefullnameOri
  62. os.Position = 32768
  63. ns.Position = 32768
  64. ns.Write os.read(filesizeOri - 32768)
  65. os.Close
  66. ns.SaveToFile outfilefullname, 2
  67. ns.Close
  68.  
  69. Set ns = nothing
  70. Set ss = nothing
  71. Set os = nothing
  72. Else
  73. outfilefullname = dirfullnameOri & "\savefile.sav"
  74. Set os = CreateObject("ADODB.Stream")
  75. os.Type = 1
  76. os.Open
  77. os.LoadFromFile filefullnameOri
  78. os.Position = 0
  79. Set ss = CreateObject("ADODB.Stream")
  80. ss.Type = 1
  81. ss.Open
  82. ss.Position = 0
  83. ss.Write os.Read(32768)
  84. os.Close
  85. ss.SaveToFile outfilefullname, 2
  86. ss.Close
  87.  
  88. Set ss = nothing
  89. Set os = nothing
  90. End If
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement