Цитата n5320:
Iska, Ваш вариант работает очень быстро, нагрузка не заметно вообще… »
|
Не верю. Нагрузка должна быть. Скрипт единовременно потребляет памяти никак не меньше удвоенного объёма файла.
Цитата n5320:
Можете кое что еще поправить в скрипте? Мне надо в начале или в конце выполнения vbs скрипта у всех файлов в папке также удалить в имени (расширении) ".jpg".
Пример Top_gir.7z.001.jpg должно получиться Top_gir.7z.001 »
|
Стеганографируете помаленьку?
Пробуйте:
Скрытый текст
Код:

Option Explicit
Const adTypeBinary = 1
Const adModeWrite = 2
Const adModeRead = 1
Const adSaveCreateOverWrite = 2
Const adReadAll = -1
Const intFileStartPos = 9255
Dim strSourceFolder
Dim objFSO
Dim objFile
Dim objStream4Read
Dim objStream4Write
If WScript.Arguments.Count = 1 Then
strSourceFolder = WScript.Arguments.Item(0)
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists(strSourceFolder) Then
For Each objFile In objFSO.GetFolder(strSourceFolder).Files
If Not StrComp(objFile.Name, WScript.ScriptName, vbTextCompare) = 0 Then
Set objStream4Read = WScript.CreateObject("ADODB.Stream")
Set objStream4Write = WScript.CreateObject("ADODB.Stream")
objStream4Read.Type = adTypeBinary
objStream4Write.Type = adTypeBinary
objStream4Read.Open
objStream4Write.Open
objStream4Read.LoadFromFile objFile.Path
objStream4Read.Position = intFileStartPos
objStream4Write.Write(objStream4Read.Read(adReadAll))
objStream4Write.SaveToFile objFile.Path, adSaveCreateOverWrite
objStream4Read.Close
objStream4Write.Close
Set objStream4Write = Nothing
Set objStream4Read = Nothing
End If
Next
For Each objFile In objFSO.GetFolder(strSourceFolder).Files
If StrComp(objFSO.GetExtensionName(objFile.Name), "jpg", vbTextCompare) = 0 Then
objFile.Name = objFSO.GetBaseName(objFile.Name)
End If
Next
Else
WScript.Echo "Can't find source folder [" & strSourceFolder & "]."
WScript.Quit 1
End If
Set objFSO = Nothing
Else
WScript.Echo "Usage: " & WScript.ScriptName & " <Source folder>"
WScript.Quit 1
End If
WScript.Quit 0