[VisualBasic] Logisch Problem beim Aufbau

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von Knusperkeks, 10. Mai 2007 .

  1. 10. Mai 2007
    Logisch Problem beim Aufbau

    Hab mal wieder nen logisches problem:

    Also ich sende gerade ein paar http anfragen ans internet um mir nen decrypter für ne verschlüsselung zu bauen

    Nur nun ist meine frage wie ich das ausfbauen muss/soll damit der alleine durchläuft ...

    Also ich habe folgende funktionen:

    req1
    req2
    connect
    findstr


    und dann hab ich noch folgende aufrufe dich ich im moment noch per hand mache:

    button 1 mit dem starten des req1
    button 2 mit starten des req2
    button 3 mit auswerung des qulltext

    so nun hab ich aber nen problem wenn ich sich das alles nacheinanders aufrufen lasse dann hat das winsock element keine zeit sich den quelltext zu holen usw. also klappt gar nix

    das programm soll in der reihenfolge ablaufen:

    knopfdruck
    ->verarbeitung der links und req1

    wenn req1 durch ist dann soll aus dem quelltext die nötigen informationen gefiltert werden (findstr)

    danach soll mit den infos der reqq2 gestertet werden
    -> hierbei ist zu beachten das wenn es mehrer links gibt das eine schleife alle informationen erhalten muss also req2 öfters abgeschickt werden muss

    und am end soll dann der quelltext der ganzen erbegnisse des req2 durchsucht werdne und die links ausgegeben werden!

    Ich hoffe ich hab mich verständlich ausgedrückt ....

    Mein problem liegt dadrinn wie ich es schaffe die sachen ancheinander durchlaufen zu lassen damit die einzelnen sachen genug zeit haben durchzulaufen ....

    hier mal der quelltext:
    Spoiler
    PHP:
    Dim sRequest  As  String
    Dim sData 
    As  String

    Private Function  req1 ( As  String )
        
    sRequest  = ****
        
    Connect
    End 
    Function

    Private Function 
    req2 ( s1  As  String s2  As  String )
        
    sRequest  = ****
        
    Connect
    End 
    Function


    Private 
    Sub btn1_Click ()
    Dim tmparr () As  String
    Dim tmp1 
    As  String
        tmparr
    () =  Split ( txtLink . Text "=" )
        
    tmp1  "/?id="  tmparr ( 1 )
        
    req1  ( tmp1 )
    End Sub

    Private  Sub btn2_Click ()
    Dim tmparr () As  Variant
    Dim tmpcodes
    () As  String
    Dim tmparr1
    () As  Variant
        tmparr
    () =  findstr ( sData "value='Download' style='width:100px' onclick='popup(""" """);'></td>" )
        For 
    0 To UBound ( tmparr )
            
    tmpcodes  Split ( tmparr ( 0 ),  """,""" )
            
    req2 tmpcodes ( 0 ),  tmpcodes ( 1 )
        
            
    Text1 . Text  Text1  vbCrLf  sData
            MsgBox 
    ( sData )
        
    Next i
    End Sub

    Private  Sub wsk_Connect ()
        
    wsk . SendData sRequest
        sRequest 
    ""
    End Sub

    Private  Sub wsk_DataArrival ( ByVal bytesTotal  As  Long )
    Dim sNewData  As  String

        wsk
    . GetData sNewData
        
        sData 
    sData  sNewData
        MsgBox 
    ( sNewData )

    End Sub

    Private Function  Connect ()
        
    wsk . Close
        wsk
    . RemoteHost  "stealth.to"
        
    wsk . RemotePort  80
        wsk
    . Connect

    End 
    Function

    Private Function 
    findstr ( As  String As  String As  String ) As  Variant
      blabla
    End 
    Function

    Knusperkeks
     
  2. 10. Mai 2007
    AW: Logisch Problem beim Aufbau

    Ich weiß nicht, ob es nur mir so geht, aber ich würde mich um einiges leichter tun, wenn du das Projekt hochladen würdest^^

    Falls ich das richtig verstanden habe, willst du, nachdem eine Bedingung eingetroffen ist, die nächste Funktion ausführen. Ich mach das immer mit einem leeren Loop, der so lange läuft, bis die Bedingung erfüllt ist:

    Code:
    Do
     If Bedingung Then
     'Funktionsaufrufe oder was auch immer
     '...
     '...
     Exit Do 'Loop abbrechen, da die Bedingung erfüllt wurde
     End If
     
     DoEvents 'wichtig, damit das Programm sich nicht "aufhängt"
    Loop
    Der Loop läuft so lange, bis die Bedingung erfüllt ist, und bricht danach ab. Der Vorteil ist, dass die nächsten Zeilen der Prozedur auch erst nach Ablauf des Loops ausgeführt werden
    Hoffentlich hilft dir das weiter :]
     
  3. 10. Mai 2007
    AW: Logisch Problem beim Aufbau

    Download offline!

    ^^ da

    also zuerst auf 1 klicken, dann auf 2 und dann auf 3 ....

    wie kriege ich das hin das der funktioniert das ich nur auf einen button klicken muss und das der auch für mehrer links funktioniert, also ich muss in req 2 loopen ....

    Knusperkeks
     
  4. 10. Mai 2007
    AW: Logisch Problem beim Aufbau

    Füg doch einfach bei wsk_Connect() das ein:

    Code:
    Private Sub wsk_DataArrival(ByVal bytesTotal As Long)
    Dim sNewData As String
    
     wsk.GetData sNewData
     
     sData = sData & sNewData
     Text1.Text = sData
     
    [COLOR="Red"] If Right(Text1.Text, 7) = "</html>" Then
     Call req2
     Else
     Call btn3_Click
     End If[/COLOR]
    
    End Sub
     
  5. 10. Mai 2007
    AW: Logisch Problem beim Aufbau

    ne dann bekomm ich nen index außerhalb des gültigen bereichs:

    PHP:
    Private  Sub btn3_Click ()
    Dim tmparr () As  Variant
    tmparr 
    findstr ( sData "location: " vbCrLf )
    MsgBox  ( tmparr ( 0 ))
    End Sub
    So in der art hab ich das ja auch schon überlegt aber dann passiert ja immer das weil nich lange genug gewartet wird usw.

    Deswegen schreib ich ja hier da ich irgendwie ned an dem problem vorbei komme


    Knusperkeks
     
  6. 10. Mai 2007
    AW: Logisch Problem beim Aufbau

    Also ich bekomme keinen Fehler. Wenn ich auf den 1. Button klicke, dauert es ein bis zwei Sekunden und die MsgBox mit dem Link erscheint...

    Vielleicht hilft ja eine Fehlerbehandlung:

    Code:
    Private Sub btn3_Click()
    
    On Error GoTo fehler
    
    Dim tmparr() As Variant
    tmparr = findstr(sData, "location: ", vbCrLf)
    MsgBox (tmparr(0))
    
    fehler:
    Exit Sub
    
    End Sub
     
  7. 10. Mai 2007
    AW: Logisch Problem beim Aufbau

    jo damit gehts schonmal danke

    Nur nun hab ich nen problem, wenn ich z.b. nen verschlüsselten link habe in dem mehr als nur ein link ist dann spuckt er ja nur den ersten aus ....

    stealth.to - webservices <-- bsp link

    dabei müsste der halt req2 so lange schicken wie tmparr(0) in req2 lang ist

    wie kann ich das noch machen?!

    Knusperkeks
     
  8. 11. Mai 2007
    AW: Logisch Problem beim Aufbau

    Dabei hilft dir vielleicht meine Funktion "WieOft":

    Code:
    Private Function WieOft(ByVal ZuDurchsuchenderString As String, ByVal ZuSuchenderString As String) As Long
    
     Dim Anzahl as Long
     Dim stelle As Long
     
     Anzahl = 0
     stelle = 1
     
     For i = 1 To Len(ZuDurchsuchenderString) Step 1
     
     If InStr(stelle, ZuDurchsuchenderString, ZuSuchenderString) > 0 Then
     stelle = InStr(stelle, ZuDurchsuchenderString, ZuSuchenderString) + 1
     Anzahl = Anzahl + 1
     End If
     Next
     
     WieOft = Anzahl
    
    End Function
    ZuDurchSuchenderString ist, wie man unschwer erkennen kann, der String, in dem etwas gesucht werden soll.

    ZuSuchenderString ist, wer hätte es gedacht, der String, der gesucht werden soll

    Eingesetzt wird die Funktion so:

    Code:
    Private Sub Form_Load()
     MsgBox WieOft("hallo", "l")
    End Sub
    Das würde dann 2 zurück geben.
     
  9. 11. Mai 2007
    AW: Logisch Problem beim Aufbau

    Ich hab ja schon die anzahl der codes die ich einbeuen muss in dem array, ich muss den ja nur noch so loopen das der die anfragen auch baschickt ohne das die anfrage schonw ieder aufgerufen wird ...

    Genau wie beim ersten mal das ich ne pause drinn brauch, nur nicht weiß wie ich sie umsetzen kann!

    Knusperkeks
     
  10. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.