Вверх ↑
Ответов: 338
Рейтинг: 3
#1: 2008-07-14 20:04:13 ЛС | профиль | цитата
По онстатусу выдается количество байт. Ну в общем я с помощью компонента серч искал один файл получал его размер (в байтах был) ну и пытался продолжить закачку с того места конца байтов. Никакой закачки я не видел и вообще файл в 0байт переходил. В общем временно отказался.

И так представляю вашему вниманию Easy Downloader 1 beta 2.

<< Удаленно для экономии трафика >>

Easy Downloader Version 1 Beta 3
Изменения:
+ Научил работать со списком ссылок;
+ Научил работать в 2х потоковом режиме (можно и больше, но мне 2х хватает );
+ Автоматическое создание папки для закачки;
* Улучшил обработку имени файла;
* Исправил ошибку обработки URL;
- Убрал выбор папки для сохранения файла;
- Убрал несколько совсем ненужных функций;
- Убрал выскакивающее сообщение о завершении закачки;
& Еще несколько мелких изменений.


Add(MainForm,6385521,-206,437)
{
Left=20
Top=105
Width=309
Height=98
Caption=" File downloader :)"
BorderStyle=4
DragForm=0
SavePosName="EDconf.iniMainForm"
Position=1
Point(doHeight)
link(onCreate,1145321:doEvent1,[])
}
Add(HTTP_Get,7856448,193,276)
{
link(onStatus,182909:doWork2,[])
link(onDownload,14727736:doData,[])
link(onURLSize,14723509:doEvent1,[(297,296)(297,352)])
link(onStop,10996282:doWork2,[])
link(URL,11395049:Var2,[])
link(FileName,6249582:Var1,[(206,264)])
}
Add(ProgressBar,5710575,606,276)
{
Left=5
Top=48
Width=270
Height=10
Max=1215752191
Point(doMax)
}
Add(StyleXP,7546511,-269,360)
{
}
Add(Edit,13613416,193,157)
{
Left=5
Top=5
Width=275
Height=17
Font=[MS Sans Serif,8,0,0,204]
Text=""
Point(doEnabled)
link(onChange,11944767:doReplace,[(237,163)(237,135)(84,135)(84,100)])
link(onEnter,10977395:doWork2,[(237,170)(237,198)(110,198)(110,492)])
}
Add(Hub,10079096,473,276)
{
OutCount=3
link(onEvent1,5710575:doPosition,[])
link(onEvent3,11678132:doOperation,[(573,296)(573,513)])
}
Add(Hub,14723509,473,346)
{
link(onEvent1,5710575:doMax,[(594,352)(594,289)])
link(onEvent2,11431048:doValue,[])
}
Add(Edit,3549425,361,164)
{
Left=5
Top=25
Width=295
Height=17
Text="C:Downloads"
Point(doEnabled)
}
Add(MultiElementEx,8320589,-87,150)
{
link(Op1,4316786:Var2,[(-81,114)(54,114)(54,342)(199,342)])
link(onEvent1,8852400:doData,[(-47,156)(-47,143)(-303,143)(-303,429)])
link(onEvent11,9639244:doWork2,[])
link(onEvent,2946541:doAdd,[(-46,170)(-46,207)(-99,207)(-99,268)])
link(Op11,5806078:Var1,[(-74,138)(72,138)(72,436)])
}
BEGIN_SDK
Add(EditMultiEx,606858,21,21)
{
WorkCount=#6:doText|
EventCount=#8:onEvent1|9:onEvent11|7:onEvent|
VarCount=#4:Var2|
DataCount=#3:Op1|4:Op11|
Width=559
Height=403
link(doText,9744097:doText,[(35,27)(35,55)])
link(Var2,11561392:Var2,[(27,405)(380,405)])
}
Add(StrPart,7759380,227,84)
{
Char="/"
link(onPart,2720705:doCompare,[(264,97)(264,246)(59,246)(59,293)])
}
Add(Memory,7694046,178,84)
{
link(onData,7759380:doSplit,[])
}
Add(DoData,2268526,395,287)
{
link(onEventData,12795110:doEvent1,[])
link(Data,11561392:Var3,[(401,268)])
}
Add(If_else,2720705,66,287)
{
Op2=String(http:)
link(onTrue,9568048:doWork2,[])
link(onFalse,14799146:doCompare,[(124,300)(124,307)])
}
Add(ArrayEnum,12168566,119,84)
{
link(onItem,7694046:doValue,[])
link(Array,9744097:Array,[(125,78)(69,78)])
}
Add(HubEx,9568048,206,280)
{
link(onEvent,13562162:doCompare,[])
}
Add(If_else,14799146,150,301)
{
Op2=String(http:)
link(onTrue,9568048:doWork3,[(210,307)])
}
Add(If_else,13562162,220,287)
{
Op2=Integer(0)
link(onTrue,3358018:doWork2,[])
link(onFalse,7902066:doCompare,[])
link(Op1,606858:Op1,[(226,236)(27,236)])
}
Add(StrList,9744097,49,28)
{
link(onChange,12168566:doEnum,[(100,34)(100,90)])
}
Add(GetDataEx,11561392,367,259)
{
Angle=3
link(Data,7694046:Value,[(331,268)(331,137)(184,137)])
}
Add(Hub,11759545,311,301)
{
link(onEvent1,606858:onEvent1,[(362,307)(362,27)])
link(onEvent2,3326239:doWork1,[(539,314)(539,223)])
}
Add(HubEx,3358018,301,280)
{
link(onEvent,2268526:doData,[])
}
Add(Hub,12795110,437,287)
{
link(onEvent1,606858:onEvent11,[(497,293)(497,34)])
link(onEvent2,3326239:doWork3,[(522,300)])
}
Add(If_else,7902066,262,294)
{
Op2=Integer(0)
link(onTrue,3358018:doWork3,[(305,300)])
link(onFalse,11759545:doEvent1,[])
link(Op1,606858:Op11,[(268,228)(34,228)])
}
Add(HubEx,3326239,518,210)
{
Angle=3
link(onEvent,606858:onEvent,[(522,41)])
}
END_SDK
Add(Memory,11431048,606,353)
{
Default=Integer(1)
}
Add(Hub,4616319,146,283)
{
link(onEvent1,7856448:GetURLSize,[(186,289)(186,296)])
link(onEvent2,7856448:doDownload,[(186,296)(186,282)])
}
Add(Button,5122615,60,521)
{
Left=280
Top=48
Width=20
Height=22
Caption=">"
link(onClick,10977395:doWork3,[(124,527)])
}
Add(Hub,11230712,473,444)
{
link(onEvent1,1803993:doMax,[(531,450)(531,401)])
}
Add(DoData,14962897,60,360)
{
link(onEventData,9639244:doWork3,[(99,366)])
link(Data,2946541:String,[(66,325)(-60,325)])
}
Add(StrCat,777010,256,80)
{
Str1="C:Downloads"
link(onStrCat,3549425:doText,[(328,86)(328,170)])
}
Add(StrPart,169726,158,80)
{
Char="/"
link(onSplit,1178965:doEvent1,[])
}
Add(Hub,1178965,200,80)
{
link(onEvent1,777010:doStrCat,[])
link(onEvent2,13429438:doWork1,[(244,93)(244,121)])
}
Add(FormatStr,13704628,718,605)
{
Mask="Download 1: %1% | Download 2:%2%"
link(onFString,6810343:In,[])
link(Str1,10839190:Result,[(724,474)(680,474)(680,551)(647,551)])
link(Str2,11558170:Result,[(731,484)(694,484)(694,649)(640,649)])
}
Add(ClipboardHook,388808,-136,150)
{
NextHook=1
link(onChange,8320589:doText,[])
}
Add(CheckBox,2205023,620,66)
{
Left=285
Top=4
Width=15
Hint="Если галка стоит то автоматически после чтения с буфера ссылки начнется закачка."
Checked=0
Caption=""
link(onCheck,7838:doWrite,[(663,72)(663,110)(549,110)(549,79)])
}
Add(If_else,7771750,620,143)
{
Op2=Integer(1)
link(onTrue,10977395:doWork1,[(666,149)(666,492)])
link(Op1,4107204:Var2,[])
}
Add(HubEx,10977395,120,479)
{
Angle=3
link(onEvent,4731100:doCompare,[(124,387)])
}
Add(Hub,8767927,116,157)
{
link(onEvent1,13613416:doText,[])
link(onEvent2,7771750:doCompare,[(158,170)(158,149)])
}
Add(GetDataEx,4107204,613,115)
{
link(Data,2205023:Checked,[])
}
Add(Math,11678132,599,507)
{
OpType=3
link(onResult,10839190:doOperation,[])
link(Op2,11431048:Value,[])
}
Add(Math,10839190,641,507)
{
OpType=2
Op2=100
ResultType=0
link(onResult,13262540:doWork1,[(684,513)])
}
Add(HubEx,9639244,95,150)
{
link(onEvent,8767927:doEvent1,[])
}
Add(Memory,10255522,599,549)
{
Default=Integer(1)
}
Add(ListBox,2946541,-87,262)
{
Left=5
Top=75
Width=295
Height=90
FileName="LoadList.txt"
Point(doSelect)
Point(String)
link(onChange,2946541:doSave,[(-47,268)(-47,303)])
link(onClick,10520695:doValue,[])
link(Str,8320589:Var2,[])
}
Add(Math,11558170,634,605)
{
OpType=2
Op2=100
ResultType=0
link(onResult,13262540:doWork2,[(673,611)(673,608)])
}
Add(Hub,7234864,347,283)
{
link(onEvent1,182909:doWork3,[(456,289)])
link(onEvent2,2922973:In,[])
}
Add(LineBreak,6667023,-206,276)
{
Caption="Del"
link(Out,14812485:doWork2,[])
Primary=[2922973,630,14]
}
Add(HubEx,182909,452,269)
{
link(onEvent,10079096:doEvent1,[])
}
Add(If_else,4271524,-80,346)
{
Op2=Integer(0)
link(onTrue,9356083:doData,[(-38,352)(-38,510)(-306,510)(-306,471)])
link(onFalse,12189528:doData,[])
link(Op1,2946541:Count,[])
}
Add(LineBreak,13104893,-171,346)
{
Caption="Check"
link(Out,14393727:doWork2,[])
Primary=[9292599,427,-49]
}
Add(DoData,9356083,-297,465)
{
Data=Integer(98)
link(onEventData,7681096:doWork2,[])
}
Add(Math,15951765,592,605)
{
OpType=3
link(onResult,11558170:doOperation,[])
link(Op2,10255522:Value,[])
}
Add(DoData,8852400,-297,423)
{
Data=Integer(192)
link(onEventData,7681096:doWork1,[(-258,429)])
}
Add(HubEx,7681096,-262,458)
{
link(onEvent,6385521:doHeight,[])
}
Add(HubEx,13429438,144,108)
{
Angle=3
link(onEvent,169726:doSplit,[(148,86)])
}
Add(Hub,14396123,11,353)
{
link(onEvent1,2946541:doSelect,[(47,359)(47,338)(-93,338)(-93,310)])
link(onEvent2,14962897:doData,[])
}
Add(DoData,12189528,-31,353)
{
Data=Integer(0)
link(onEventData,14396123:doEvent1,[])
}
Add(Hub,1145321,-160,451)
{
OutCount=4
link(onEvent1,8611398:In,[])
link(onEvent2,2946541:doLoad,[(-113,464)(-113,296)])
link(onEvent3,14393727:doWork3,[(-100,471)])
link(onEvent4,9851879:doData,[])
}
Add(HubEx,14393727,-104,339)
{
link(onEvent,4271524:doCompare,[])
}
Add(DoData,1143514,1,304)
{
link(onEventData,14812485:doWork1,[(43,310)(43,251)(-149,251)])
link(Data,10520695:Value,[(7,299)(-35,299)])
}
Add(HubEx,14812485,-153,269)
{
link(onEvent,2946541:doDelete,[])
}
Add(DoData,14727736,305,283)
{
Data=Integer(0)
link(onEventData,7234864:doEvent1,[])
}
Add(LineBreak,7855359,-206,297)
{
Caption="Del"
link(Out,14812485:doWork3,[(-149,303)])
Primary=[4498366,595,105]
}
Add(Ini,7838,561,66)
{
FileName="EDconf.ini"
Section="Options"
Key="Automatic"
link(onResult,2205023:doCheck,[])
link(Value,4107204:Var1,[(588,54)(604,54)(604,124)])
}
Add(LineBreak,6492351,487,66)
{
Caption="ReadKey"
link(Out,7838:doRead,[])
Primary=[8611398,-574,385]
}
Add(Replace,11944767,92,94)
{
SubStr="%20"
DestStr=" "
link(onReplace,13429438:doWork2,[(130,100)(130,121)])
}
Add(Memory,10520695,-41,269)
{
link(onData,6564011:doPopupHere,[])
}
Add(PopupMenu,6564011,1,262)
{
Menu=#17: Нечего не делать|1:-|16: Удалить ссылку|
link(onClick,1551234:doEvent,[])
}
Add(IndexToChanel,1551234,50,262)
{
Count=3
link(onEvent2,1341864:doWork1,[(94,275)(94,283)(61,283)])
link(onEvent3,1341864:doWork2,[(94,282)(94,303)])
}
Add(HubEx,1341864,57,290)
{
Angle=2
link(onEvent,1143514:doData,[(-39,303)(-39,310)])
}
Add(If_else,4731100,148,381)
{
Op2=Integer(0)
link(onTrue,4616319:doEvent1,[(192,387)(192,338)(134,338)(134,289)])
link(onFalse,10724080:doCompare,[(192,394)(192,432)(136,432)(136,464)])
link(Op1,4316786:Var1,[(154,326)])
}
Add(GetDataEx,4316786,186,317)
{
link(Data,7856448:Busy,[])
}
Add(Hub,7270742,473,388)
{
InCount=2
OutCount=3
link(onEvent1,1803993:doPosition,[])
link(onEvent2,10255522:doValue,[(522,401)(522,555)])
link(onEvent3,15951765:doOperation,[(511,408)(511,611)])
}
Add(Hub,12380412,340,395)
{
link(onEvent2,4498366:In,[])
}
Add(HTTP_Get,3187153,242,388)
{
link(onStatus,7270742:doEvent1,[])
link(onDownload,3823370:doData,[])
link(onURLSize,11230712:doEvent1,[(293,408)(293,450)])
link(onStop,10996282:doWork3,[(286,415)(286,328)(236,328)])
link(URL,11395049:Var3,[(248,229)])
link(FileName,6249582:Var2,[])
}
Add(Hub,10321712,202,388)
{
link(onEvent1,3187153:doDownload,[])
link(onEvent2,3187153:doStop,[])
}
Add(If_else,10724080,148,458)
{
Op2=Integer(0)
link(onTrue,10321712:doEvent1,[(197,464)(197,394)])
link(Op1,5806078:Var2,[(154,447)(224,447)])
}
Add(ProgressBar,1803993,536,388)
{
Left=5
Top=58
Width=270
Height=10
Max=1215752191
Point(doMax)
}
Add(GetDataEx,11395049,186,220)
{
link(Data,13613416:Text,[])
}
Add(GetDataEx,6249582,242,255)
{
Angle=1
link(Data,3549425:Text,[(367,264)])
}
Add(DoData,3823370,298,395)
{
Data=Integer(0)
link(onEventData,7270742:doEvent2,[])
}
Add(HubEx,10996282,232,290)
{
link(onEvent,9292599:In,[])
}
Add(GetDataEx,5806078,211,427)
{
Angle=1
link(Data,3187153:Busy,[(248,436)])
}
Add(LineBreak,4468151,-251,437)
{
link(Out,6385521:doCaption,[])
Primary=[6810343,1038,168]
}
Add(Dir,6376649,-79,472)
{
}
Add(DoData,9851879,-122,472)
{
Data=String(C:Downloads)
link(onEventData,6376649:doDir,[])
}
Add(HubEx,13262540,680,595)
{
link(onEvent,13704628:doString,[(703,608)(703,611)])
}
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0