Доброго времени суток.
Задача: Чистить папки пользователя, например \Downloads, \Documents, \Desktop. Не удалять ярлыки.
Код ересь, но работает. Загвоздка в указании нескольких расположений. Про Array знаю, но не могу прицепить.
Код:
Set SHELL = CreateObject ("WScript.Shell")
Set SF = SHELL.SpecialFolders
set wshell = wscript.createobject("wscript.shell")
set appshell = createobject("shell.application")
Set objFSO = CreateObject("Scripting.FileSystemObject")
set fso = createobject("scripting.filesystemobject")
user_path = wshell.expandenvironmentstrings("%userprofile%")
user_path1 = user_path & "\Desktop"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(user_path1)
Set colSubfolders = objFolder.Subfolders
Set objParentFolder = objFSO.GetFolder(user_path1)
ShowSubfolders objParentFolder
Sub ShowSubFolders(Folder)
For Each Subfolder in Folder.SubFolders
Set objSubFolder = objFSO.GetFolder(Subfolder.Path)
ShowSubFolders Subfolder
For Each efile in objSubFolder.Files
Set gFILE = objFSO.GetFile (efile)
gFILE.Attributes = 0
Next
Next
End Sub
For Each objSubfolder in colSubfolders
objFSO.DeleteFolder objFSO.GetFolder(user_path1)+"\"+objSubfolder.Name
Next
For Each efile in objFolder.Files
Set gFILE = objFSO.GetFile (efile)
fEXT = objFSO.GetExtensionName (efile.Path)
If LCase (fEXT)<>"lnk" then
gFILE.Attributes = 0
objFSO.DeleteFile efile
End If
Next