2016-11-28 17 views
1

Этот сценарий ниже переименовывает группу изображений, выполняемых запланированной задачей, в которой живой становится обоими на неделю (насколько мне известно). Сценарий не работал через какое-то время, без изменения среды. Мой VB немного ржавый, но я, похоже, не вижу проблемы.Переименование файлов по сценарию

Сообщение об ошибке:

enter image description here

Set fso = CreateObject("Scripting.FileSystemObject") 

Set oFldr = fso.getfolder("E:\Users\Citrix Templates\Wallpaper") 
For Each ofile In oFldr.Files 
    If ofile.Name = "1.jpg" Then 
    ofile.Name = "b0.jpg" 
    ElseIf ofile.Name = "2.jpg" Then 
    ofile.Name = "1.jpg" 
    ElseIf ofile.Name = "3.jpg" Then 
    ofile.Name = "2.jpg" 
    ElseIf ofile.Name = "4.jpg" Then 
    ofile.Name = "3.jpg" 
    ElseIf ofile.Name = "5.jpg" Then 
    ofile.Name = "4.jpg" 
    ElseIf ofile.Name = "6.jpg" Then 
    ofile.Name = "5.jpg" 
    ElseIf ofile.Name = "7.jpg" Then 
    ofile.Name = "6.jpg" 
    ElseIf ofile.Name = "8.jpg" Then 
    ofile.Name = "7.jpg" 
    ElseIf ofile.Name = "9.jpg" Then 
    ofile.Name = "8.jpg" 
    ElseIf ofile.Name = "a0.jpg" Then 
    ofile.Name = "9.jpg" 
    ElseIf ofile.Name = "a1.jpg" Then 
    ofile.Name = "a0.jpg" 
    ElseIf ofile.Name = "a2.jpg" Then 
    ofile.Name = "a1.jpg" 
    ElseIf ofile.Name = "a3.jpg" Then 
    ofile.Name = "a2.jpg" 
    ElseIf ofile.Name = "a4.jpg" Then 
    ofile.Name = "a3.jpg" 
    ElseIf ofile.Name = "a5.jpg" Then 
    ofile.Name = "a4.jpg" 
    ElseIf ofile.Name = "a6.jpg" Then 
    ofile.Name = "a5.jpg" 
    ElseIf ofile.Name = "a7.jpg" Then 
    ofile.Name = "a6.jpg" 
    ElseIf ofile.Name = "a8.jpg" Then 
    ofile.Name = "a7.jpg" 
    ElseIf ofile.Name = "a9.jpg" Then 
    ofile.Name = "a8.jpg" 
    ElseIf ofile.Name = "LiveCitrixWallpaper.jpg" Then 
    ofile.Name = "a9.jpg" 
    End If 
Next 

For Each ofile In oFldr.Files 
    If ofile.Name = "b0.jpg" Then 
    ofile.Name = "LiveCitrixWallpaper.jpg" 
    End If 
Next 
+0

Возможно, вы пытаетесь переименовать файл в уже существующее имя файла. Например, если файл 'LiveCitrixWallpaper.jpg' существует, и вы пытаетесь переименовать что-то в это, я думаю, это заставило бы эту ошибку. Сценарий когда-либо работал? –

+0

Если я рассчитываю на строку 14, это код: 'ofile.Name =" 4.jpg "'. Откройте папку и посмотрите, существует ли этот файл. Если это так, удалите его и запустите снова. Думаю, вы получите ошибку на другой строке. –

+0

может подтвердить, он работал как какой-то момент. – Tzhari

ответ

0

Я удалил b0.jpg изображения из пути к файлу и, кажется, работает.

Не уверен, почему он его нарушил ... но теперь переименовал их.

+0

До тех пор, пока файл b0.jpg не вернется и не сломает его снова. –

+0

, так как скрипт поддерживает циклический список, вы должны проверить, существует ли b0 в начале и удалить его. Для ясности я бы изменил все 'elseif' на' if' и положил 'inile.Name =" 1.jpg "' за 'Then' – LotPings

Смежные вопросы