Собрал скрипт, создающий ярлыки на изменившиеся файлы за сутки:
Dim strFolder, dstFolder, File, objFSO, objFolder, WSHShell
strFolder = "S:\sheff"
dstFolder = "C:\newfiles"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set WSHShell = WScript.CreateObject("WScript.Shell")
Set objFolder = objFSO.GetFolder(strFolder)
Set colFiles = objFolder.Files
For Each objFile In colFiles
File = objFile.ShortName
Doit File
Next
ShowSubFolders(objFolder)
Sub ShowSubFolders(objFolder)
Set colFolders = objFolder.SubFolders
For Each objSubFolder In colFolders
Set colFiles = objSubFolder.Files
For Each objFile In colFiles
File = objFile.ShortName
Doit File
Next
ShowSubFolders(objSubFolder)
Next
End Sub
Function Doit(File)
If (Now - objFile.DateLastModified) < 2 Then
Set MyShortcut = WSHShell.CreateShortcut(dstFolder & "\" & File & ".lnk")
MyShortcut.TargetPath = objFile
MyShortcut.WorkingDirectory = objFolder
MyShortcut.WindowStyle = 4
MyShortcut.Save
End If
End Function
но
он выдает ошибку после всех действий и имена ярлыков получаются кракозябрами
UPD: с ошибкой разобрался, теперь нужно разобраться с именем ярлыка, как-то иначе получать имя файла в File здесь Set MyShortcut = WSHShell.CreateShortcut(dstFolder & "\" & File & ".lnk")