Вот, то же самоё на VBS:
Код:
Dim objWshShell, strFileName, strFullFileName
Dim strFullFolderName
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objWshShell = WScript.CreateObject("WScript.Shell")
If WScript.Arguments.Count = 1 Then
sFile = WScript.Arguments.Item(0)
Set fso = CreateObject("Scripting.FileSystemObject")
strFileName = sFile
End If
STR = strFileName
intLength = Len(str)
intCharacters = intLength - 4
strNew = Left(str, intCharacters)
strFullFolderName = objFSO.BuildPath(objWshShell.SpecialFolders("C , D ,"), strNew)
If objFSO.FolderExists(strFullFolderName) Then
result = MsgBox ("Папка """& strFullFolderName &""" уже существует." & Chr(10) & "Выберите действие:" & Chr(10) & " " & Chr(10) & """Да"" - переименовать папку в """& strFullFolderName & "_OLD""""" & Chr(10) & "и продолжить работу." & Chr(10) & """Нет"" - окрыть существующую папку для просмотра." & Chr(10) & """Отмена"" - завершить работу.", vbYesNoCancel, "Выбор действия.")
Select Case result
Case vbYes
if objFSO.FolderExists(strFullFolderName & "_OLD") Then
objFSO.DeleteFolder strFullFolderName & "_OLD"
objFSO.MoveFolder strFullFolderName , strFullFolderName & "_OLD"
objFSO.CreateFolder strFullFolderName
WScript.Sleep 500
Else
objFSO.MoveFolder strFullFolderName , strFullFolderName & "_OLD"
objFSO.CreateFolder strFullFolderName
WScript.Sleep 500
end if
Case vbNo
objWshShell.Run(strFullFolderName & "\")
WScript.Quit 0
Case vbCancel
WScript.Quit 0
End Select
Else
objFSO.CreateFolder strFullFolderName ' 40-стр
End If
strFullFileName = objFSO.BuildPath(objWshShell.SpecialFolders("C , D ,"), strNew)
objFSO.CreateTextFile strFullFileName & ".txt"
objFSO.MoveFile strFullFileName & ".txt" , strFullFileName & "\"
strFullFileName = objFSO.BuildPath(objWshShell.SpecialFolders("C , D ,"), strFileName)
objFSO.MoveFile strFullFileName , strFullFolderName & "\"
'Можем открыть папку для просмотра, если надо:
' objWshShell.Run("Explorer" &" " & strFullFolderName & "\")
Set objWshShell = Nothing
Set objFSO = Nothing
WScript.Quit 0
Не понятно только - почему работает только для 22-х файлов. Или это особенности операционной системы(может у меня, что-то не работает?) или я чего-то не догоняю.
Объясните, пожалуйста, если у кого-нибудь найдётся свободное время и желание.
Заранее благодарен...
|