Создание BAR-файла на основе заданного набора ярлыков

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Последний скрипт не пробовал. Там какие-то заморочки с ярлыками, не очень пока понял, тему не шерстил. С предыдущим вроде порядок.
Аватара пользователя
Batya
Сообщения: 2236
Зарегистрирован: Ср дек 15, 2004 09:51
Откуда: Москва, Россия

Сообщение Batya »

Нда... Хоть в отпуск не ходи :)))

angry_dog
Я уже сам запутался в предлагаемых изменениях. Что у тебя в 181-ой строке скрипта?
Нет, я не сплю. Я просто медленно моргаю.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Batya
Судя по всему, это:

Код: Выделить всё

   For Each Menu1 in SubFold.Files
Аватара пользователя
angry_dog
Сообщения: 143
Зарегистрирован: Пт ноя 20, 2009 23:05
Откуда: Питер

Сообщение angry_dog »

Batya писал(а):Нда... Хоть в отпуск не ходи :)))
Что у тебя в 181-ой строке скрипта?
Прости, Батя за отпуск) в 181 строке:
For Each Menu1 in SubFold.Files
Аватара пользователя
Batya
Сообщения: 2236
Зарегистрирован: Ср дек 15, 2004 09:51
Откуда: Москва, Россия

Сообщение Batya »

angry_dog
Вместо этой строки пропиши:

Код: Выделить всё

Dim FF
On Error Resume Next
Set FF = SubFold.Files
If (Err.Number > 0) Or (Not IsObject(FF)) Then FF = Array()
On Error GoTo 0
For Each Menu1 in FF
Нет, я не сплю. Я просто медленно моргаю.
Аватара пользователя
angry_dog
Сообщения: 143
Зарегистрирован: Пт ноя 20, 2009 23:05
Откуда: Питер

Сообщение angry_dog »

Batya писал(а):Вместо этой строки пропиши:
Если в "параметры" не ставить "0", не происходит ничего. С "0" в параметрах ошибка:
---------------------------
Windows Script Host
---------------------------
Сценарий: C:\temp\789.vbs
Строка: 186
Символ: 2
Ошибка: Разрешение отклонено
Код: 800A0046
Источник: Ошибка выполнения Microsoft VBScript

---------------------------
ОК
---------------------------
Аватара пользователя
Batya
Сообщения: 2236
Зарегистрирован: Ср дек 15, 2004 09:51
Откуда: Москва, Россия

Сообщение Batya »

angry_dog писал(а):Если в "параметры" не ставить "0", не происходит ничего.
Так и должно быть. В этом режиме только меняется ключ реестра.
angry_dog писал(а):С "0" в параметрах ошибка:
Странно. Давай, попробуем вместо (в изначальном скрипте)

Код: Выделить всё

  For Each Menu1 in SubFold.SubFolders 
    k = k + 1 
    ProcessFolder F1, Menu1, k, NewBar 
  Next 
  For Each Menu1 in SubFold.Files 
    If (Menu1.Attributes and Hidden) <> Hidden Then  
      k = k + 1 
      ProcessFile F1, Menu1, k 
    End If 
  Next 
записать

Код: Выделить всё

  Dim FF 
  On Error Resume Next 
  Set FF = SubFold.SubFolders 
  On Error GoTo 0
  If IsObject(FF) Then
    For Each Menu1 in FF
      k = k + 1 
      ProcessFolder F1, Menu1, k, NewBar 
    Next 
  End If
  On Error Resume Next 
  Set FF = SubFold.Files 
  On Error GoTo 0
  If IsObject(FF) Then
    For Each Menu1 in FF 
      If (Menu1.Attributes and Hidden) <> Hidden Then  
        k = k + 1 
        ProcessFile F1, Menu1, k 
      End If 
    Next
  End If
В дальнейшем кроме текста ошибки пиши, что у тебя в строке, на которой произошла ошибка.
Нет, я не сплю. Я просто медленно моргаю.
Ответить