Stack Ausleeren

05/10/2009 20:20 NBA#1
Hi,
Hab grad ein Problem(chen).
Ich beschreib eine Mem sehr sehr oft (und schnell), und wenn ich das Script dann laufen lasse, killt es den Script :
Code:
C:\Users\bla\Desktop\AutoIt v3 Script (neu).au3 (28) : ==> Recursion level has been exceeded - AutoIt will quit to prevent stack overflow.:
$write1 = _MemoryWrite($mem, $hprocess, 2147499889)
Gibt es einen Möglichkeit, den Stack auszuleeren?
Leider kann ich keine Sleep dazwischen setzten, sonst macht das Script nicht das gewünschte....
Das Script funzt mit der NoMadMemory...

Und SuFu hab ich schon genutzt ;)

MfG
NBA

e: Fürs erste gelöst (mit einer While schleife...ka warums damit besser geht als mit Do)
05/12/2009 12:15 I3iLLiG#2
du rufst mehrmal innerhalb deiner schleife, die wiedrum nochmals eine Funktion aufruft, ein event auf...

post den sc..
05/12/2009 14:05 RDTSC#3
Standardgemäß beträgt die Größe des Adressraumes des zugewiesenen Stacks 1 MB.
Den wirst du wohl kaum rechtens aufgebraucht haben ;-)

Was hat dein Sleep-Aufruf mit dem Stack zu tun?
Könntest ja mal deinen Quelltext zeigen.

Btw. "(und schnell)":
Du weißt schon, in welchem Subforum du dich befindest, oder?
05/12/2009 18:09 NBA#4
Ja. AutoIT schnell halt. Ich beschreibe nur Adressen, sieht ungefaehr so aus:
Code:
While 1
$write 1 = _Memorywrite(bla)
$write 2 = _Memorywrite(bla)
$write 3 = _Memorywrite(bla)
$write 4 = _Memorywrite(bla)
...
WEnd
Sonst mach ich da nichts gross.
Ich wollte es eigentlich so machen :

Code:
Do
...(das ganze beschreiben usw.)
Until $i = 4000
Lag wahrscheinlich an dem $i..
05/13/2009 18:24 __wadim#5
wäre es nicht einfacher es zu nop'en?

Quote:
e: Fürs erste gelöst (mit einer While schleife...ka warums damit besser geht als mit Do)
sollte doch eigentlich keinen unterschied machen, welche schleife du benutzt?
05/13/2009 18:30 felixli93#6
bei mir kam dieser stack error auch mal und zwar, als ich eine funktion gemacht habe, in der die selbe funktion noch einmal aufgerufen wurde
und das immer und immer wieder und ziemlich schnell
als diese funktion dann ca. 10000 mal geöffnet war, kam dieser stack error

vllt gibts in deinem script was ähnliches, also eine funktion, die bevor sie beendet wird sich selber nochmal aufruft
05/13/2009 23:11 NBA#7
1. Ich ruf KEINE Funktion auf. Ich beschreib mir bloss ein paar Mems.
2. Scheint es anscheinend an meinen Variablen gelegen zu haben, aus welchem Grund auch immer ($i zu gross?).