Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


читать дальше »
Попробуйте так:
Код: Выделить весь код
Option Explicit

Dim strSourceFolder
Dim lngMaxSize

Dim objFSO
Dim objFile

Dim intFoldersCount
Dim strDestFolder
Dim lngSize


strSourceFolder = "E:\Песочница\0246\Source"
lngMaxSize      = 20 * 2^20

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")

If objFSO.FolderExists(strSourceFolder) Then
	lngSize = 0
	intFoldersCount = 1
	strDestFolder = objFSO.BuildPath(strSourceFolder, Right("0000" & CStr(intFoldersCount), Len("0000")))
	objFSO.CreateFolder strDestFolder
	
	For Each objFile In objFSO.GetFolder(strSourceFolder).Files
		If objFile.Size < lngMaxSize Then
			If lngSize + objFile.Size > lngMaxSize Then
				lngSize = 0
				intFoldersCount = intFoldersCount + 1
				strDestFolder = objFSO.BuildPath(strSourceFolder, Right("0000" & CStr(intFoldersCount), Len("0000")))
				objFSO.CreateFolder strDestFolder
			End If
			
			lngSize = lngSize + objFile.Size
			objFile.Move strDestFolder & "\"
		Else
			WScript.Echo "Size of file [" & objFile.Name & "] is [" & objFile.Size & "] that more then MaxSize [" & lngMaxSize & "]"
		End If
	Next
Else
	WScript.Echo "Source folder [" & strSourceFolder & "] not found"
End If

WScript.Quit 0
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:05, 04-05-2013 | #5