Seite 1 von 1

ed2k link Parser

Verfasst: 04.01.2005 14:50
von Monstalocke
Hallo erstmal,
Ich wollte TV-Serien runterladen.*böserjunge* :mrgreen: Da hat mich eins tierisch aufgeregt:Die ewige klickerei um die Dateien in eMule einzufügen.Also hab ich kurz (2Tage) ein Progrämmchen geschrieben.Hier ist es.Mich würde es freuen wenn ihr mir ein kleines Feedback geben könntet
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
[/url]

Verfasst: 09.01.2005 11:13
von Monstalocke
so uninteressant?
Hätt ich mir ja die hälfte der Arbeit sparen können!

Verfasst: 09.01.2005 11:29
von Kiffi
> so uninteressant?

da ich eMule & Co nicht benutze: Ja

Grüße ... Kiffi

Verfasst: 08.04.2005 14:02
von hardfalcon
Ich benutze Shareaza. Habe es zwischendurch mal mit MLDonkey versucht, weil der noch viel mehr kann, aber das Programm war nicht zu bedienen. (Webinterface). Und ich hatte mir auch einen GUI dazu besorgt (angeblich der ofizielle), der funzte gar nicht... Dann bin ich wieder auf Shareaza umgestiegen. Ist viel einfacher zu bedienen...

Verfasst: 08.04.2005 14:41
von Leo
Ihr macht euch strafbar :lol:

Verfasst: 08.04.2005 14:46
von diGGa
nur wenn sie illegale sachen saugen... das nutzen der programme is nich verboten

Verfasst: 08.04.2005 15:23
von hardfalcon
Schau dir bitte mal mein letztes Posting im Thread über die kostenlose Vollversion von Opera in der Laberecke an. Da steht meine Meinung zum Thema.
Und im übrigen scheinst du es da auch nicht so genau zu nehmen, sonst hättest du wohl kein :lol: gesetzt, oder? :wink:

cya
Pascal

//EDIT: Rechtschreibfehler ausgemerzt, weil manche davon zu schlimm waren...

Verfasst: 08.04.2005 16:27
von Leo
hardfalcon hat geschrieben:SChau dir bitte mal mein letztes Posting im Thread über die kosten lose Vollversion von Opera in der Laber ecke an. Da steht meine Meinung zum thema.
Und im übrigen scheinst du es da auch nicht so genau zu nehmen, sonst hättest du wohl kein :lol: gesetzt, oder? :wink:

cya
Pascal
Genau ;)
Bin übrigens zu faul mir den ganzen Thread da über Opera durchzulesen :lol:

Verfasst: 08.04.2005 16:43
von hardfalcon
Das was ich meine, beginnt ~ unterhalb der Mitte von Seite 6...

Verfasst: 08.04.2005 17:32
von the one and only
Ja dieser Flameware, *ährm* ich meinte diese sinnvolle Diskussion war schon recht interessant <)

Wenn ich eMule bei mir zum laufen gebracht hab teste ichs mal. Momentan hab ich ständig nen NAT Fehler. Weiß aber schon dass das an meinem Router & an den ports liegt.