Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Скрипты для скачивания файлов
Goto page 1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
skole



Joined: 31 Dec 2004
Posts: 162
Location: Россия, Оренбург

Post (Separately) Posted: Mon Jun 04, 2007 17:03    Post subject: Скрипты для скачивания файлов Reply with quote

Написал скрипт (VBS), но проблема в том, что в пустой папке от не хочет запускаться, пишет что Индекс выходит за пределы допустимого диапазона... Как избежать этой ошибки в дальнейшем? параметр входного файлов описываю как "%L". Т.е. по идее даже если в папке нет никаких файлов, то скрипт должен выполняться

 !  Avada:
Прежний заголовок "Вопрос скриптописателям" заменён с учётом последующего обсуждения на более содержательный.
Back to top
View user's profile Send private message
D1P



Joined: 20 Dec 2004
Posts: 2973
Location: Тбилиси

Post (Separately) Posted: Mon Jun 04, 2007 17:22    Post subject: Reply with quote

Не зная, что должен делать скрипт, и каков его код, могу только посоветовать юзать оператор условия if =). В самом деле, если скрипт обрабатывает список переданных файлов, и ему передаётся пустота...
_________________
База знаний о Total Commander
Блог
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2218
Location: Москва, Россия

Post (Separately) Posted: Mon Jun 04, 2007 18:34    Post subject: Reply with quote

Приведи кусок кода со строкой, в которой происходит ошибка.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
skole



Joined: 31 Dec 2004
Posts: 162
Location: Россия, Оренбург

Post (Separately) Posted: Tue Jun 05, 2007 08:27    Post subject: Reply with quote

Code:
' ==============================================================
'  Description:   Производит скачивание файлов и сайтов из
'         локальных сетей и Интернет, возможна докачка,
'         скачиваемый файл можно задавать как в ручную,
'         так и из файла с расширением URL
'  Installation:   Параметры: "%L"(именно в кавычках!)
'         Изменить! Exe = """Путь к файлу wget.exe"""
'  Author:      SkOle
' ==============================================================

Dim FSO, WSH, TempFile
Set FSO = CreateObject("Scripting.FileSystemObject")
Set WSH = CreateObject("WScript.Shell")
Set TempFile = CreateObject("Scripting.FileSystemObject").OpenTextFile(WScript.Arguments(0), 1)

Commander_Path = WSH.ExpandEnvironmentStrings("%COMMANDER_PATH%")
Exe = (chr(34) & Commander_Path + "\System\Bin\WGet\wget.exe" & chr(34))

File = TempFile.ReadLine
If FSO.GetExtensionName(File) <> "url" Then
 URL = InputBox("Введите ссылку для скачивания", "Download Script")
 If URL = nil Then
  WScript.Quit
 Else
  WSH.Run Exe & " -r -c -nd --tries=1000000 " & " " & URL
 End If
Else
 WSH.Run Exe & " -i " & File & " -r -c -nd --tries=1000000"
 WScript.Quit
End If

Set WSH = Nothing
Set FSO = Nothing
Set TempFile = Nothing
WScript.Quit


вот весь скрипт целиком... если папка пустая: в ней нет ни файлов, ни каталогов, то получается, что курсор стоит на [..] (переход на каталог выше) и в качестве входного параметра передается null и выскакивает ошибка... как избежать именно вот этого, что если нет никаких файлов под курсором, то скрипт должен выполнять действия с момента
Code:
 URL = InputBox("Введите ссылку для скачивания", "Download Script")
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2218
Location: Москва, Россия

Post (Separately) Posted: Tue Jun 05, 2007 13:17    Post subject: Reply with quote

Я бы сделал примерно так:
Code:
Dim FSO, WSH, F, TempFile, Commander_Path, Exe, Params
Set FSO = CreateObject("Scripting.FileSystemObject")
Set WSH = CreateObject("WScript.Shell")

Commander_Path = WSH.ExpandEnvironmentStrings("%COMMANDER_PATH%")
Exe = """" & Commander_Path + "\System\Bin\WGet\wget.exe"""
Params = " -r -c -nd --tries=1000000"

If WScript.Arguments.Count > 0 Then
  F = WScript.Arguments(0)
  If Not FSO.FileExists(F) Then
    Set WSH = Nothing
    Set FSO = Nothing
    WScript.Quit   
  End If
  Set TempFile = FSO.OpenTextFile(F, 1)
  Do While Not TempFile.AtEndOfStream
    File = TempFile.ReadLine
    If LCase(FSO.GetExtensionName(File)) <> "url" Then
      URL = InputBox("Файл " & File & " не является URL-ом." & vbNewLine & _
              "Введите ссылку для скачивания", "Download Script")
      If Len(URL) > 0 Then
        WSH.Run Exe & Params & " " & URL, 7, False
      'Else Пропускаем
      End If
    Else
     WSH.Run Exe & " -i " & File & Params, 7, False
   End If
  Loop
  TempFile.Close
  Set TempFile = Nothing
Else
  URL = InputBox("Не указаны параметры." & vbNewLine & _
          "Введите ссылку для скачивания", "Download Script")
  If Len(URL) > 0 Then
    WSH.Run Exe & Params & " " & URL, 7, False
  'Else Пропускаем
   End If
End If

Set WSH = Nothing
Set FSO = Nothing
WScript.Quit
Back to top
View user's profile Send private message
skole



Joined: 31 Dec 2004
Posts: 162
Location: Россия, Оренбург

Post (Separately) Posted: Wed Jun 06, 2007 10:19    Post subject: Reply with quote

блин, спасибо
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Sep 20, 2011 06:52    Post subject: Reply with quote

Тэкс, граждане пассажиры, тунеядцы, хулиганы, алкоголики, рецидивисты, ... ну, и другие нуждающиеся... Smile
Имеются скрипты по скачке серии файлов по прямым линкам из буфера и с сайта. Есть желающие возыметь? Cool

Добавлено: Ср. Сен 21, 2011 02:12
Да, я посмотрю, "много" тут любителей скорости и автоматизма...
Ну, не хотите - как хотите...
Back to top
View user's profile Send private message
cojoc



Joined: 04 Sep 2009
Posts: 144

Post (Separately) Posted: Thu Sep 22, 2011 17:11    Post subject: Reply with quote

Flasher поделись пожалуйста - мне нужно!
Спасибо!


Last edited by cojoc on Thu Sep 22, 2011 18:31; edited 3 times in total
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Sep 22, 2011 18:22    Post subject: Reply with quote

cojoc
Ну, раз один человек просит, даю так! Smile
Back to top
View user's profile Send private message
Andrey_A



Joined: 10 Apr 2009
Posts: 394
Location: Сочи

Post (Separately) Posted: Thu Sep 22, 2011 20:12    Post subject: Reply with quote

Flasher
А архивчик-то с паролем
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Sep 22, 2011 20:33    Post subject: Reply with quote

Andrey_A
А ты проницателен. Smile 6 скачек, зато доселе реакции - ноль. Вот такие граждане у нас: получить хотят, а попросить не могут.
Вот человек попросил - человек и получил. Wink
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2076
Location: Russian Federation

Post (Separately) Posted: Thu Sep 22, 2011 20:54    Post subject: Reply with quote

Flasher wrote:
6 скачек, зато доселе реакции - ноль.

Всего лишь-то.
Flasher wrote:
Вот такие граждане у нас: получить хотят, а попросить не могут.

После такого
Flasher wrote:
тунеядцы, хулиганы, алкоголики, рецидивисты, ... ну, и другие нуждающиеся...

просить...
Flasher wrote:
Вот человек попросил - человек и получил.

Затея очевидна.
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Sep 22, 2011 21:01    Post subject: Reply with quote

ask-rus
Не разводи флудильню.
Вот у cojoc с чувством умора проблем нет, на таких понимающих и было рассчитано.

Quote:
Всего лишь-то.
За пару часов достаточно, чтобы понять, что это ещё кому-то надо.
Back to top
View user's profile Send private message
Andrey_A



Joined: 10 Apr 2009
Posts: 394
Location: Сочи

Post (Separately) Posted: Thu Sep 22, 2011 22:27    Post subject: Reply with quote

у меня с чуством юмоа не всегда очень..
Надо было попросить?
Тогда прошу!
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Sep 22, 2011 22:38    Post subject: Reply with quote

Andrey_A wrote:
Надо было попросить?
Хотя бы положительно отреагировать на вопрос:
Flasher wrote:
Есть желающие возыметь?
Andrey_A wrote:
Тогда прошу!
Отправлено.

 !  Моторокер:
Два последующих бессмысленных сообщения удалены (п.11). Просьба для просьб использовать личку Flasher.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page 1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Next
Page 1 of 10

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group