rtk217 Posted September 26, 2005 Share Posted September 26, 2005 (edited) plz help me improve this codeand also answer my question something in this code crashes after a while with error about recursive functioneven though i havent set up any recursive functions at all.any improvement to the code will be helpfulohh and ignore the messy GUI thats not the problem herecan u plz tell me about the function of memopen, memclose, memwrite, memreadwhat variables should i put inside those and what will this functions returnhere is the link to au3http://planet.nana.co.il/rtk217de/macrosjmem.au3 Edited September 26, 2005 by rtk217 Link to comment Share on other sites More sharing options...
w0uter Posted September 26, 2005 Share Posted September 26, 2005 instead of using call("myfunc") just use myfunc() My UDF's:;mem stuff_Mem;ftp stuff_FTP ( OLD );inet stuff_INetGetSource ( OLD )_INetGetImage _INetBrowse ( Collection )_EncodeUrl_NetStat_Google;random stuff_iPixelSearch_DiceRoll Link to comment Share on other sites More sharing options...
Wb-FreeKill Posted September 26, 2005 Share Posted September 26, 2005 plz help me improve this codeand also answer my question something in this code crashes after a while with error about recursive functioneven though i havent set up any recursive functions at all.any improvement to the code will be helpfulohh and ignore the messy GUI thats not the problem heredude thats a long code to check, upload the au3 file and post the link in the topic here, that would help Link to comment Share on other sites More sharing options...
rtk217 Posted September 27, 2005 Author Share Posted September 27, 2005 plz help me the code above give me after 20 minutes of running an error that says "recursive error exceeded to prever stack overflow the program is going to be closed" Link to comment Share on other sites More sharing options...
hgeras Posted September 27, 2005 Share Posted September 27, 2005 Your link is down so i cant have a look at your code ... Although from what i read a look wouldnt be enough... I suspect that you either use a continuously growing array (_ArrayAdd maybe) or creating new variables until AutoIt reaches its limits.... Useful information about COM/Objects referenceMy Scripts:PapDefragNvidia Temperature Logger V3.0 with graph analyzerAutoiIt Update Checker And Downloader V1.0ArrayPush UDF Link to comment Share on other sites More sharing options...
rtk217 Posted September 28, 2005 Author Share Posted September 28, 2005 i use neither one of thisi only have one constant arrayand i dont have any recursive functionshere is a link to the codehttp://planet.nana.co.il/rtk217de/mse.au3 Link to comment Share on other sites More sharing options...
Valuater Posted September 28, 2005 Share Posted September 28, 2005 i use neither one of thisi only have one constant arrayand i dont have any recursive functionshere is a link to the codehttp://planet.nana.co.il/rtk217de/mse.au3Your "LINK" is bad8) Link to comment Share on other sites More sharing options...
MrSpacely Posted September 28, 2005 Share Posted September 28, 2005 you can just attach a file here why not try that when you post a message you can add it to the post. And it will be on the autoit forum server Link to comment Share on other sites More sharing options...
rtk217 Posted September 28, 2005 Author Share Posted September 28, 2005 ok the exact error is: recursion level has been exceeded - autoit will now terminate program in order to prever stack overflow.mse.au3 Link to comment Share on other sites More sharing options...
GaryFrost Posted September 28, 2005 Share Posted September 28, 2005 ok the exact error is:recursion level has been exceeded - autoit will now terminate program in order to prever stack overflow. Made some changes, you are calling the function main repeatedly, i believe that's the recursion problem, can't test this but this might fix your problem, also added _Exit function, and updated _IsPressed function so that dll is only opened 1 time and then closed upon exit.Gary SciTE for AutoItDirections for Submitting Standard UDFs  Don't argue with an idiot; people watching may not be able to tell the difference.  Link to comment Share on other sites More sharing options...
rtk217 Posted September 28, 2005 Author Share Posted September 28, 2005 naaa still have the recursive problem im thinking of reprogramming this program maybe make an include file with some of the commands in function main. u are correct its main that causes this to happen but i still dont understand why, the function doesnt call it self or inherit itself. meanwhile i did that after 300 runs of function main ( i read in the help file of autoit that recursive maximum is 384) the program restarts itself. plz i need something better Link to comment Share on other sites More sharing options...
GaryFrost Posted September 28, 2005 Share Posted September 28, 2005 Ok, lets follow the path. setup is called block or main is called if block is called, main is called from block in main if attack is called from main, attack calls main, hmmm recursion? probably more..... SciTE for AutoItDirections for Submitting Standard UDFs  Don't argue with an idiot; people watching may not be able to tell the difference.  Link to comment Share on other sites More sharing options...
rtk217 Posted September 28, 2005 Author Share Posted September 28, 2005 (edited) man iyt doesnt happen at the spot it happens after like 30 minutes of the program running im thinking myself recursion is a function that calls itself or a function that calls another function to call her but uses inhertiage of its own defined variables. there is no recursion should i write another func that will be called from attack and then call main? i really dont know where this gone wrong Edited September 28, 2005 by rtk217 Link to comment Share on other sites More sharing options...
GaryFrost Posted September 28, 2005 Share Posted September 28, 2005 Yes there is:if attack is called from main, attack calls main SciTE for AutoItDirections for Submitting Standard UDFs  Don't argue with an idiot; people watching may not be able to tell the difference.  Link to comment Share on other sites More sharing options...
GaryFrost Posted September 28, 2005 Share Posted September 28, 2005 (edited) Here is a simple version of what your doing with those 2 function as an example: Edited September 28, 2005 by gafrost SciTE for AutoItDirections for Submitting Standard UDFs  Don't argue with an idiot; people watching may not be able to tell the difference.  Link to comment Share on other sites More sharing options...
rtk217 Posted September 28, 2005 Author Share Posted September 28, 2005 so can u give me any other solutions to solve this problem? Link to comment Share on other sites More sharing options...
GaryFrost Posted September 28, 2005 Share Posted September 28, 2005 don't call main from attack function, as you can see from the example, main will resume once the attack function is done. SciTE for AutoItDirections for Submitting Standard UDFs  Don't argue with an idiot; people watching may not be able to tell the difference.  Link to comment Share on other sites More sharing options...
Valuater Posted September 28, 2005 Share Posted September 28, 2005 (edited) gafrost is very sharp.... he taught me how to do many things in Autoit i call him Mr. Wizard.. my suggestion.... listen to him' 8) Edited September 28, 2005 by Valuater Link to comment Share on other sites More sharing options...
rtk217 Posted September 28, 2005 Author Share Posted September 28, 2005 (edited) well at first attack was part of main so i think im gonna put that back in main and improve some functions in the code. any suggestions how to make it more efficiant in resources and size? ok this is the new code hope it will work without bugs!mse.au3 Edited September 28, 2005 by rtk217 Link to comment Share on other sites More sharing options...
falconv Posted September 28, 2005 Share Posted September 28, 2005 I don't know if this will actually help make it more efficient or not, but maybe grabbing only the functions you need from your include files and putting it in your code instead of including the whole file. This way, it's only including the lines you need for your code, and not the hundreds of lines that you won't use anyway (because when you #include a file, it will append that whole file to your script when you make it a .exe Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now