Привет всем!
Наткнулся на чрезвычайно странную граблю.
Итак, дано:
0) P4-3GHz/1GB RAM
1) Win XP Pro SP2 English;
2) Remote Admin 3.0 для удаленного руления оной;
3) USD v1.3.4.6;
4) CAP v1.7.4b;
5) некоторое количество управляемых мной же локальных проксей, через которые ведется закачка.
В такой комбинации я пытаюсь качать с rapidshare.com много всякого.
Оно качается. Т.е. CAP все распознает как нужно, и закачка нормально стартует, но очень часто в процессе уже собственно скачивания файла USD "подвисает" и качать перестает. Это заметно по тому, что прекращается обновление полей "Скачано:" и "Скорость:". Кроме того, при таком "подвисании" перестает откликаться встроенный в USD web-сервер.
Вывести USD из этого режима довольно просто, и сделать это можно любым из следующих способов:
- Alt-Tab'ом переключиться из окна USD в другое окно, а затем вернуться обратно;
- кликнуть левой кнопкой мыши по иконке USD в system tray'е;
- двойным кликом на любой ссылке из списка закачки открыть диалог с ее свойствами;
- закрыть этот же диалог кнопкой "Отмена" (если "подвисание" произошло, когда он был открыт);
- иногда (но не всегда) бывает достаточно даже просто пошевелить мышью на окне USD.
В общем, впечатление такое, что надо просто сгенерить некоторых виндовых event'ов, чтобы USD "проснулся" и продолжил качать.
Эти "подвисания" USD случаются часто, но не регулярно. Эмпирически замечено, что чем больше скорость закачки с rapidshare.com, тем реже случаюся "подвисания". Скажем на скоростях порядка 0.8-1.2 MBytes/s "подвисания" или вовсе не случаюся или их бывает 1-2. На скоростях же 100 KBytes/s и ниже "подвисаний" случаюся многие десятки на один 100MB файл. Такое впечатление, что на относительно небольших скоростях USD успевает "на все отреагировать" до прихода очередной порции данных в soket и впадает в цикл ожидания виндовых event'ов, а на высоких скоростях просто "в socket'е все время что-то есть на чтение" и поэтому такого не происходит. Но это, естественно, только мои весьма приближенные догадки. Как и почему оно на самом деле так случается должно быть виднее автору.
Но приводит это все к тому, что приходится просто сидеть и мышью как кнутом подгонять USD'шный процесс закачки. Понятно, что при этом ни о какой автоматизации процесса скачивания файлов не может быть и речи, увы.
Сталкивался ли кто-нибудь с подобным, и есть ли идеи, что с этим можно сделать?
На всякий случай, вот мой [more=USDownloader.ini]
Код: [Main]
SelectLang=1
SaveTo=d:\Downloads\USD\
SaveToItems=d:\Downloads\USD\|n
ProgVer=1349
DoWithLink=0
RunLink=
CachClipb=0
ShowPopup=1
StartWhenLoad=0
StartWhenAdd=0
TryToRotation=50
TryToDelete=0
DefaultDelay=60
HintTransparent=254
BrandwishLimit=0
BrandwishLim1=0
BrandwishLim2=0
MinSpeed=0
MinSpeedTime=1
ShowLog=0
LogFileLimit=0
LogAutoUpdate=1
ResumeDownload=1
PowerOffIfDone=0
DisconnifDone=0
RunMinimized=0
OnlyVerify=0
DeleteErrors=0
DeleteSuccess=0
UseSheled=0
ConfirmClose=1
PassiveFTP=1
HTTPSviaIE=1
NTLMAuth=0
RightPanelWidth=423
UserAgent=Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)
DblClPaste=1
ConfirmClbPaste=0
DefaultSaveToFolder=d:\Downloads\USD\
DownloadDirectLinks=0
Language=
NotCheckDoubles=0
MoveWhenRotate=0
WhenAddInsDescr=0
HintHidePause=2
DebugLog=2
AlwaysOnTop=0
[WindowsPos]
EditWinPosLeft=296
EditWinPosTop=404
EditWinPosWidth=623
EditWinPosHeight=329
LogWinPosLeft=-4
LogWinPosTop=-4
LogWinPosWidth=1194
LogWinPosHeight=1032
LogWinFilterIndex=1
MainWinPosLeft=41
MainWinPosTop=98
MainWinPosWidth=1048
MainWinPosHeight=746
[Sounds]
Sound1=
Sound2=
Sound3=
Sound4=
Sound5=
Sound6=
Sound7=
Sound8=
BeepFreq=440
BeepDur=100
[Proxy]
UseHTTPProxy=1
UseFTPProxy=0
UseHTTPSocks=0
UseFTPSocks=0
RotateProxy=1
ReadTimeOut=600
ConnectTimeout=600
DirectDownload=0
[HTTPProxy]
Address=
Port=
Login=
Password=
ProxyList="D:\bin\USD1\proxy-list-many.txt"
[FTPProxy]
Address=
Port=
Login=
Password=
LikeHTTP=1
[HTTPSocks]
Address=
Port=
Login=
Password=
Type=0
[FTPSocks]
Address=
Port=
Login=
Password=
Type=0
LikeHTTP=1
[Visualization]
AnimType=0
Color1=clSilver
Color2=clGray
TrayColor=clBlack
FontColor=clWhite
FontSize=8
FontName=Arial
FontBold=1
FontItalic=0
FontUnderline=0
FontShadow=1
Transparent=254
[Update]
NewProg=0
CheckNewPlg=0
ShowWindow=0
UpdateOnlyDirectIp=0
Every=24
LastCheck=276392
UpdateServer=1
DownloadNewPlugins=0
DownloadAllLNG=0
[WebServer]
Enabled=1
Address=0.0.0.0
Port=8888
Login=
Password=
Form.AddLink.Width=400
Form.AddLink.URL.Height=100
Form.AddLink.Descr.Height=200
[Descriptions]
AlwaysSave=0
SaveTXT=1
SaveION=1
IONinDOS=0
IONHidden=0
[Plugins]
DisabledPlgs=""
NotUpdatedPlgs=""
[Statistic]
StateBs=1036405255
StateGB=3
StateDate=39248
[Integration]
IE=0
Opera=0
FF=0
[Plugin_rapidshare.com]
RecogniseCMD=FineOCR_RS.bat
NetworkNum=6
[Plugin_FileFactory]
RecogniseCMD=FineOCR_FF.bat
[Plugin_RapidShare.com]
WaitTimeAdd=15
NetworkNum=0
RecogniseCMD=FineOCR_RS.bat
WaitTime=0
[Plugin_RapidShareCom]
RecogniseCMD=FineOCR_RS.bat
ShowCommandWindow=0
[Plugin_filefactory.com]
RecogniseCMD=FineOCR_FF.bat
ShowCommandWindow=0