Seite 1 von 2

Maximalwert bei Delay?

Verfasst: 07.02.2008 20:59
von Farodin
Nachdem die SuFu nix ergeben hat Frage ich halt mal (wenns nicht hierher passt bitte verschieben):

Und zwar habe ich um jemanden zu ärgern einen Bot geschrieben,der ihn im SchülerVZ zuspammen soll. Wers kennt,weiß dass man dort pro minute nur 5 Kommentare machen kann,also habe ich mir gedacht: "mach ich die 5 und dann ein Delay für 60 Sekunden." Aber irgendwie wurde daraus nbix,er macht bis zum Delay und dann nichts mehr. Ein Delay von 12 Sekunden nach jedem kommentar geht auch nicht. Kann es also sein,dass ein Delay maximal x Millisekunden dauern darf? (Lösungsvorschläge für das Problem nehm ich natürlich auch gerne entgegen^^)

hier mal die Spam-Prozedur:

Code: Alles auswählen

Procedure Spam()
  Repeat
    For counter = 1 To 5
      MouseClic(670,220)
      Delay(1000)
      MouseClic(470,490)
      Delay(1000)
      MouseClic(500,250)
      Delay(1000)
      SimKey(#VK_CAPITAL)
      Delay(50)
      SimKey(#VK_H)
      Delay(50)
      SimKey(#VK_CAPITAL)
      Delay(50)
      SimKey(#VK_A)
      Delay(50)
      SimKey(#VK_SPACE)
      Delay(50)
      SimKey(#VK_CAPITAL)
      Delay(50)
      SimKey(#VK_H)
      Delay(50)
      SimKey(#VK_CAPITAL)
      Delay(50)
      SimKey(#VK_A)
      Delay(50)
      MouseClic(550,400)
      Delay(2000)
      SetGadgetAttribute(0,#PB_Web_ScrollY,3250)
    Next
  Until WaitWindowEvent() = #PB_Event_CloseWindow
EndProcedure

Verfasst: 07.02.2008 21:06
von Ja!
Hi,

zu allererst: Spam ist scheis... Aber darum gehts ja nicht.

Delay hat vermutlich schon irgendeinen Maximalwert, der liegt aber mit Sicherheit nicht bei 60sec (also 60000ms).

Der Fehler liegt in Deinem Programm.
[Edit] Müll entsorgt

Gruß

Verfasst: 07.02.2008 21:09
von AND51
Maximalwert = #INFINITE = -1
Pausiert das Programm unendlich lange. Naja, zumindest bis zum nächsten Urknall.

Verfasst: 07.02.2008 21:12
von Ja!
AND51 hat geschrieben:Maximalwert = #INFINITE = -1
Pausiert das Programm unendlich lange. Naja, zumindest bis zum nächsten Urknall.
Glaubst Du nicht, daß der Maximalwert eine endliche Zahl ist?
Ab einer bestimmten Stellenzahl kann ein Rechner doch nicht mehr..
(evtl ein quad, also 9223372036854775807ms)

Verfasst: 07.02.2008 21:38
von #NULL
Und zwar habe ich um jemanden zu ärgern einen Bot geschrieben,der ihn im SchülerVZ zuspammen soll.
duarsch!
schick lieber bonbons oder blumen oder geld.

aber kannst doch einfach sekunden drumwrappen:

Code: Alles auswählen

Procedure delaySec(secs.l)
  Protected i.l
  For i=1 To secs
    Delay(1000)
  Next
EndProcedure

Verfasst: 07.02.2008 21:55
von Ja!
Oder auch ohne delay:

Code: Alles auswählen

time.q=ElapsedMilliseconds()
While ElapsedMilliseconds() - time < wartezeit_in_ms : Wend
geht bis 296 Millionen Jahre :-)
(zumindest wenn ElapsedMilliseconds auch ein quad ist(?) )

Verfasst: 07.02.2008 22:35
von HeX0R
Ja! hat geschrieben: (zumindest wenn ElapsedMilliseconds auch ein quad ist(?) )
Nee, ist ein Long (siehe GetTickCount())

Verfasst: 07.02.2008 22:38
von Scarabol
öhm wo genau bleibt der jetzt oben in der Proc hängen?

Gruß
Scarabol

Verfasst: 07.02.2008 22:40
von HeX0R
Ich wette beim WaitWindowEvent()

Verfasst: 07.02.2008 22:48
von Ja!
HeX0R hat geschrieben:Ich wette beim WaitWindowEvent()
Das hatte ich zuerst auch geschrieben (dann wieder gelöscht) weil er meinte, daß es beim ersten Delay hängen bleibt.
Hab ich net ganz gecheckt.. !?


Er könte einfach WindowEvent() probieren..