Ich wollte TV-Serien runterladen.*böserjunge*

alternativ kann man die fertig compilierte Datei + Quellcode + Anleitung auch http://purearea.net/pb/showcase/show.ph ... p=0&sort=1 oder http://www.papillion-noir.de/ed2klpV1B2.rar runterladen
Code: Alles auswählen
;{-_Enumeration
Enumeration
#Window_0
EndEnumeration
Enumeration
#Text_0
#String_input
#Button_dir
#ProgressBar
#output
#Button_1
#Listview
EndEnumeration
;}
;{-_Declare
Declare Open_Window()
Declare messages(txt.s,x)
Declare download_file(adresse.s)
Declare load_file(file.s)
;}
;{-_Procedure
Procedure Open_Window()
If OpenWindow(#Window_0, 240, 154, 370, 330, #PB_Window_SystemMenu | #PB_Window_TitleBar | #PB_Window_ScreenCentered , "Ed2k Link Parser V1 BUILD 2")
If CreateGadgetList(WindowID())
TextGadget(#Text_0, 10, 10, 100, 20, "input File:", #PB_Text_Right | #PB_Text_Border)
StringGadget(#String_input, 110, 10, 225, 20, "")
ButtonGadget(#Button_dir, 335, 10, 25, 20, "...")
ProgressBarGadget(#ProgressBar, 10, 35, 350, 20, 0, 100)
EditorGadget(#output, 10, 120, 350, 200)
ButtonGadget(#Button_1, 10, 60, 350, 20, "START")
ListViewGadget(#Listview, 10, 85, 350, 30)
EndIf
EndIf
EndProcedure
Procedure messages(txt.s,x)
Select x
Case -1
AddGadgetItem(#Listview,-1,txt.s)
SetGadgetState(#Listview,CountGadgetItems(#Listview)-1)
Case 0
y=CountGadgetItems(#Listview)-1
z.s=GetGadgetItemText(#Listview,y,0)
RemoveGadgetItem(#Listview,y)
AddGadgetItem(#Listview,-1,z.s+txt.s)
SetGadgetState(#Listview,CountGadgetItems(#Listview)-1)
EndSelect
EndProcedure
Procedure download_file(adresse.s)
messages("Downloade File...",-1)
URLDownloadToFile_(0,adresse.s,"download.htm",0,0)
messages("OK!",0)
EndProcedure
Procedure load_file(file.s)
messages("Öffne Datei: "+file+"...",-1)
If ReadFile(1,file)
messages("OK",0)
fs=FileSize(file.s)
messages("Dateigrösse: "+Str(fs)+" bytes",-1)
messages("Reserviere Arbeitsspeicher...",-1)
*mem=AllocateMemory(fs)
messages("OK",0)
messages("Lese Datei ein...",-1)
ReadData(*mem,fs)
messages("OK",0)
messages("Starte Suche",-1)
For i =1 To fs-7
SetGadgetState(#ProgressBar,(i*100)/(fs-7))
string1.s=PeekS(*mem+i,7)
If LCase(string1)="ed2k://"
For j=i To fs-7
string2.s=PeekS(*mem+j,2)
SetGadgetState(#ProgressBar,(j*100)/(fs-2))
If string2="|/"
string3.s=PeekS(*mem+i,j-i+2)
messages("Link gefunden",-1)
count=count+1
For i=1 To count
If GetGadgetItemText(#output,i-1,0)= string3
stop=1
EndIf
Next
If stop=1
stop=0
messages("doppelter Link gefunden",-1)
i=j
Else
AddGadgetItem(#output,-1,string3)
count2=count2+1
i=j
EndIf
Break
EndIf
Next
EndIf
Next
messages("Suche beendet. "+Str(count)+" Links gefunden, "+Str(count2)+ " Links angezeigt",-1)
CloseFile(1)
Else
messages("FEHLER:Datei konnte nicht geöffnet werden",-1)
EndIf
EndProcedure
;}
Open_Window()
Repeat
event=WindowEvent()
gadget=EventGadgetID()
Select event
Case #PB_Event_CloseWindow
quit=1
Case #PB_Event_Gadget
Select gadget
Case #Button_1
ClearGadgetItemList(#output)
file.s=GetGadgetText(#String_input)
If LCase(Left(file,7))="http://"
messages("INTERNET Adresse gefunden",-1)
download_file(file.s)
file="download.htm"
EndIf
load_file(file)
Case #Button_dir
SetGadgetText(#String_input,OpenFileRequester("Datei zum einlesen","","",""))
EndSelect
EndSelect
Delay(10)
Until quit=1