ixam Posted September 8, 2016 Share Posted September 8, 2016 (edited) Hi I have a script that continously checks all tabs open in IE, checks if its on a specific site, that has a specific form open and after some time presses a button on that form. It also works if this specific site is open multiple times, via an array. Anyway here is the code: EDIT: Removed my code as I narrowed the problem down to the _IEFrameGetObjByName Function.T his code returns the same error with any ie site open, can someone else try if this works for them?: #include <ie.au3> Local $oIE = _IEAttach("","instance") While 1 Local $oFrame = _IEFrameGetObjByName($oIE,"anything") WEnd I dont have much experience with AutoIT, so the code could probably be improved. But it works as intended up until some point the IE funcitons throw these "random" errors: Without _IEErrorHandlerRegister Spoiler "C:\Program Files (x86)\AutoIt3\Include\ie.au3" (1811) : ==> The requested action with this object has failed.: Return SetError($_IESTATUS_Success, $oTemp.GetElementsByTagName($sTagName).length, $oTemp.GetElementsByTagName($sTagName)) Return SetError($_IESTATUS_Success, $oTemp^ ERROR ->12:16:20 AutoIt3.exe ended.rc:1 With _IEErrorHandlerRegister Spoiler --> IE.au3 T3.0-2 Warning from function _IEAttach, $_IESTATUS_NoMatch \\home$\Desktop\Auoit\Auftrag Timer\Auftrag_Timer.au3 (1811) : ==> COM Error intercepted ! err.number is: 0x80020008 err.windescription: Falscher Variablentyp. err.description is: err.source is: err.helpfile is: err.helpcontext is: err.lastdllerror is: 0 err.scriptline is: 1811 err.retcode is: 0x00000000 \\home$\Desktop\Auoit\Auftrag Timer\Auftrag_Timer.au3 (1811) : ==> COM Error intercepted ! err.number is: 0x80020008 err.windescription: Falscher Variablentyp. err.description is: err.source is: err.helpfile is: err.helpcontext is: err.lastdllerror is: 0 err.scriptline is: 1811 err.retcode is: 0x00000000 \\home$\Desktop\Auoit\Auftrag Timer\Auftrag_Timer.au3 (713) : ==> COM Error intercepted ! err.number is: 0x000000A9 err.windescription: Variable must be of type 'Object'. err.description is: err.source is: err.helpfile is: err.helpcontext is: err.lastdllerror is: 0 err.scriptline is: 713 err.retcode is: 0x00000000 --> IE.au3 T3.0-2 Warning from function _IEFrameGetObjByName, $_IESTATUS_NoMatch (No Frames found) --> IE.au3 T3.0-2 Error from function _IEFormGetObjByName, $_IESTATUS_InvalidDataType \\home$\Desktop\Auoit\Auftrag Timer\Auftrag_Timer.au3 (1811) : ==> COM Error intercepted ! err.number is: 0x80020008 err.windescription: Falscher Variablentyp. err.description is: err.source is: err.helpfile is: err.helpcontext is: err.lastdllerror is: 0 err.scriptline is: 1811 err.retcode is: 0x00000000 \\home$\Desktop\Auoit\Auftrag Timer\Auftrag_Timer.au3 (1811) : ==> COM Error intercepted ! err.number is: 0x80020008 err.windescription: Falscher Variablentyp. err.description is: err.source is: err.helpfile is: err.helpcontext is: err.lastdllerror is: 0 err.scriptline is: 1811 err.retcode is: 0x00000000 \\home$\Desktop\Auoit\Auftrag Timer\Auftrag_Timer.au3 (713) : ==> COM Error intercepted ! err.number is: 0x000000A9 err.windescription: Variable must be of type 'Object'. err.description is: err.source is: err.helpfile is: err.helpcontext is: err.lastdllerror is: 0 err.scriptline is: 713 err.retcode is: 0x00000000 --> IE.au3 T3.0-2 Warning from function _IEFrameGetObjByName, $_IESTATUS_NoMatch (No Frames found) --> IE.au3 T3.0-2 Error from function _IEFormGetObjByName, $_IESTATUS_InvalidDataType \\home$\Desktop\Auoit\Auftrag Timer\Auftrag_Timer.au3 (1811) : ==> COM Error intercepted ! err.number is: 0x80020008 err.windescription: Falscher Variablentyp. err.description is: err.source is: err.helpfile is: err.helpcontext is: err.lastdllerror is: 0 err.scriptline is: 1811 err.retcode is: 0x00000000 \\home$\Desktop\Auoit\Auftrag Timer\Auftrag_Timer.au3 (1811) : ==> COM Error intercepted ! err.number is: 0x80020008 err.windescription: Falscher Variablentyp. err.description is: err.source is: err.helpfile is: err.helpcontext is: err.lastdllerror is: 0 err.scriptline is: 1811 err.retcode is: 0x00000000 \\home$\Desktop\Auoit\Auftrag Timer\Auftrag_Timer.au3 (713) : ==> COM Error intercepted ! err.number is: 0x000000A9 err.windescription: Variable must be of type 'Object'. err.description is: err.source is: err.helpfile is: err.helpcontext is: err.lastdllerror is: 0 err.scriptline is: 713 err.retcode is: 0x00000000 --> IE.au3 T3.0-2 Warning from function _IEFrameGetObjByName, $_IESTATUS_NoMatch (No Frames found) --> IE.au3 T3.0-2 Error from function _IEFormGetObjByName, $_IESTATUS_InvalidDataType --> IE.au3 T3.0-2 Error from function _IEAttach, $_IESTATUS_InvalidValue ($iInstance < 1) --> IE.au3 T3.0-2 Error from function _IEPropertyGet, $_IESTATUS_InvalidDataType --> IE.au3 T3.0-2 Warning from function _IEAttach, $_IESTATUS_NoMatch !>12:23:13 AutoIt3.exe ended.rc:-1073741819 +>12:23:13 AutoIt3Wrapper Finished. In those example I have the sites open but not the forms and dont touch them for the time the script runs, but regardless what I do it crashes after some seemingly random time. I found something similar, but that was a bug that is supposed to be already fixed: https://www.autoitscript.com/trac/autoit/ticket/2541 I have no idea why this happens it seems like its a bug, I tried some different stuff like to "reattach" the IE Objects when it finds the new tabs with this line: $Tabs[$ArrayIndex] = $Tab But with no success, so it seems this is a issue with the IE Functions that have some kind of leak or something after some time. Also I changed some code and error message due to privacy and my AutoIt version is v3.3.14.2, my Internet Explorer Version is 11.0.30 and I use Windows 7 Version 6.1.7601 Service Pack 1 Build 7601. Anyone got any idea or is it a bug? Edited September 9, 2016 by ixam Link to comment Share on other sites More sharing options...
ixam Posted September 9, 2016 Author Share Posted September 9, 2016 Noone? Btw how can you edit your posts, I can find the button? Link to comment Share on other sites More sharing options...
Danp2 Posted September 9, 2016 Share Posted September 9, 2016 Can you provide a working example? Without that, it is difficult for us to guess at the cause of your issue. Quote Also I changed some code and error message due to privacy Maybe I'm just suspicious by nature, but this type of statement sets off warning bells. Are you sure that your usage doesn't violate the forum rules? If not, what type of websites are you trying to interact with? Latest Webdriver UDF Release Webdriver Wiki FAQs Link to comment Share on other sites More sharing options...
ixam Posted September 9, 2016 Author Share Posted September 9, 2016 (edited) 1 hour ago, Danp2 said: Can you provide a working example? Without that, it is difficult for us to guess at the cause of your issue. Maybe I'm just suspicious by nature, but this type of statement sets off warning bells. Are you sure that your usage doesn't violate the forum rules? If not, what type of websites are you trying to interact with? Its just some folders that contain my name and stuff, I literally just want to press a button on a site, what is suspicous about that lol Anyway I narrowed it down you dont even need my code anymore. Its the _IEFrameGetObjByName Function that throws an error after continious calls. Run this code on any site: #include <ie.au3> Local $oIE = _IEAttach("","instance") While 1 Local $oFrame = _IEFrameGetObjByName($oIE,"anything") WEnd It will throw the same error that I get with my script after some time: Spoiler "C:\Program Files (x86)\AutoIt3\Include\ie.au3" (1811) : ==> The requested action with this object has failed.: Return SetError($_IESTATUS_Success, $oTemp.GetElementsByTagName($sTagName).length, $oTemp.GetElementsByTagName($sTagName)) Return SetError($_IESTATUS_Success, $oTemp^ ERROR ->13:45:54 AutoIt3.exe ended.rc:1 This seems definitely like a bug. Maybe there is a memory leak in the function? Anyone else try this please (you have to have one tab on IE open), hopefully its not just me that gets this error. Edit: Lol now the edit button appeared it wasnt there before... Edited September 9, 2016 by ixam Link to comment Share on other sites More sharing options...
AutoBert Posted September 9, 2016 Share Posted September 9, 2016 8 hours ago, ixam said: This seems definitely like a bug. Then write a ticket, but therefor you need a short runable script, showing the issue! Link to comment Share on other sites More sharing options...
ixam Posted September 9, 2016 Author Share Posted September 9, 2016 (edited) 10 hours ago, ixam said: definitely like a bug. Maybe there is a memory leak in the function? Anyone else try this please (you have to have one tab on IE open), hopefully its not just me that gets this error. Did you read my reply/edit or is this not a short runable script ? #include <ie.au3> Local $oIE = _IEAttach("","instance") While 1 Local $oFrame = _IEFrameGetObjByName($oIE,"anything") WEnd Did you try this? If not please do, so I can confirm its not just me that gets an error. Edited September 9, 2016 by ixam Link to comment Share on other sites More sharing options...
AutoBert Posted September 10, 2016 Share Posted September 10, 2016 (edited) This script is runable but without any sence: there a errors, but you don't handle them. the cpu will overhead, because you aren't using any sleep in the never ending loop. So there are hardware caused error possible. If you don't know how to use _IEFrameGetObjByName, hav a look in helpfile and run also the example. Edited September 10, 2016 by AutoBert Link to comment Share on other sites More sharing options...
mLipok Posted September 10, 2016 Share Posted September 10, 2016 @ixam Give some info AutoIt Version Windows Version IE Version and read this tickets: https://www.autoitscript.com/trac/autoit/ticket/3167https://www.autoitscript.com/trac/autoit/ticket/3097 Signature beginning:* Please remember: "AutoIt"..... * Wondering who uses AutoIt and what it can be used for ? * Forum Rules ** ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Code * for other useful stuff click the following button: Spoiler Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API * ErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 * My contribution to others projects or UDF based on others projects: * _sql.au3 UDF * POP3.au3 UDF * RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF * SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane * Useful links: * Forum Rules * Forum etiquette * Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * Wiki: * Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX IE Related: * How to use IE.au3 UDF with AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskScheduler * IE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related: * How to get reference to PDF object embeded in IE * IE on Windows 11 * I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions * EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *I also encourage you to check awesome @trancexx code: * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuff * OnHungApp handler * Avoid "AutoIt Error" message box in unknown errors * HTML editor * winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/ "Homo sum; humani nil a me alienum puto" - Publius Terentius Afer"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming" , be and \\//_. Anticipating Errors : "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty." Signature last update: 2023-04-24 Link to comment Share on other sites More sharing options...
ixam Posted September 10, 2016 Author Share Posted September 10, 2016 1 hour ago, mLipok said: @ixam Give some info AutoIt Version Windows Version IE Version and read this tickets: https://www.autoitscript.com/trac/autoit/ticket/3167https://www.autoitscript.com/trac/autoit/ticket/3097 Please read my posts: On 8.9.2016 at 0:37 PM, ixam said: ... and my AutoIt version is v3.3.14.2, my Internet Explorer Version is 11.0.30 and I use Windows 7 64 bit Version 6.1.7601 Service Pack 1 Build 7601. Anyway the second ticket looks very similar, but that was opened 14 months ago, so I is this ever going to be fixed? 1 hour ago, AutoBert said: This script is runable but without any sence: there a errors, but you don't handle them. the cpu will overhead, because you aren't using any sleep in the never ending loop. So there are hardware caused error possible. If you don't know how to use _IEFrameGetObjByName, hav a look in helpfile and run also the example. Obviously the script doesnt make sense, its just an example. I know there are errors because _IEFrameGetObjByName never finds anything, but those dont matter, does the script ever stop for you by itself, which it shouldnt but it does for me? Btw I also get a fatal error if I use Sleep, its just comes slower. Link to comment Share on other sites More sharing options...
mLipok Posted September 10, 2016 Share Posted September 10, 2016 8 minutes ago, ixam said: Please read my posts: I overlooked this. 8 minutes ago, ixam said: that was opened 14 months ago, so I is this ever going to be fixed? I hope so. Signature beginning:* Please remember: "AutoIt"..... * Wondering who uses AutoIt and what it can be used for ? * Forum Rules ** ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Code * for other useful stuff click the following button: Spoiler Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API * ErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 * My contribution to others projects or UDF based on others projects: * _sql.au3 UDF * POP3.au3 UDF * RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF * SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane * Useful links: * Forum Rules * Forum etiquette * Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * Wiki: * Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX IE Related: * How to use IE.au3 UDF with AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskScheduler * IE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related: * How to get reference to PDF object embeded in IE * IE on Windows 11 * I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions * EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *I also encourage you to check awesome @trancexx code: * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuff * OnHungApp handler * Avoid "AutoIt Error" message box in unknown errors * HTML editor * winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/ "Homo sum; humani nil a me alienum puto" - Publius Terentius Afer"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming" , be and \\//_. Anticipating Errors : "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty." Signature last update: 2023-04-24 Link to comment Share on other sites More sharing options...
AutoBert Posted September 10, 2016 Share Posted September 10, 2016 14 minutes ago, ixam said: Obviously the script doesnt make sense, its just an example. Than it's a example without sence, there is no need to search the same frame >1, if it isn't found 1. time it never will be found. But test this (also nonsence script): #include <ie.au3> Local $oIE = _IE_Example("iframe") Local $oFrame Local $i=0 Local $tdStart=TimerInit() While 1 Local $oFrame = _IEFrameGetObjByName($oIE, "iFrameTwo") $i+=1 If Not Mod($i,10) Then Sleep(10) If $i>10000 Then ExitLoop WEnd ConsoleWrite(TimerDiff($tdStart)&@TAB&$i& ' Times looped'&@CRLF) _IEQuit($oIE) if you don't close IE while running it wouldn't crash or throw any error. Link to comment Share on other sites More sharing options...
ixam Posted September 10, 2016 Author Share Posted September 10, 2016 16 minutes ago, AutoBert said: Than it's a example without sence, there is no need to search the same frame >1, if it isn't found 1. time it never will be found. But test this (also nonsence script): Thanks for that script, but unfortunately I cant test that for another week as I´m away from home. I´m on my phone right now, but I´d suspect it will throw the same error, because it essentially does the same thing (If you didnt understand my script crashed after 10 seconds, it also crashed with sleep it just took longer). Also it does make sense to search for the frame more then one time, because you know you can actually navigate the site. Anyway this ticket from mLipok https://www.autoitscript.com/trac/autoit/ticket/3097 seems to be basically the same thing. Its 14 months old so I can only hope it will ever get fixed. Thanks for your help regardless. Link to comment Share on other sites More sharing options...
mLipok Posted September 10, 2016 Share Posted September 10, 2016 1 hour ago, ixam said: Please read my posts: On 8.09.2016 at 0:37 PM, ixam said: ... and my AutoIt version is v3.3.14.2, my Internet Explorer Version is 11.0.30 and I use Windows 7 64 bit Version 6.1.7601 Service Pack 1 Build 7601. Please make your tests on Winodws 10 with latest upgrades and latest IE version. This would be interesting. Signature beginning:* Please remember: "AutoIt"..... * Wondering who uses AutoIt and what it can be used for ? * Forum Rules ** ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Code * for other useful stuff click the following button: Spoiler Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API * ErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 * My contribution to others projects or UDF based on others projects: * _sql.au3 UDF * POP3.au3 UDF * RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF * SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane * Useful links: * Forum Rules * Forum etiquette * Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * Wiki: * Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX IE Related: * How to use IE.au3 UDF with AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskScheduler * IE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related: * How to get reference to PDF object embeded in IE * IE on Windows 11 * I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions * EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *I also encourage you to check awesome @trancexx code: * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuff * OnHungApp handler * Avoid "AutoIt Error" message box in unknown errors * HTML editor * winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/ "Homo sum; humani nil a me alienum puto" - Publius Terentius Afer"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming" , be and \\//_. Anticipating Errors : "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty." Signature last update: 2023-04-24 Link to comment Share on other sites More sharing options...
Dent Posted September 13, 2016 Share Posted September 13, 2016 I'm having the same problem- I use _IEQuit in the loop as I thought this would free up the resources used before it is called again, but watching the running processes in Task Manager I can see the amount of memory used by the IE processes increases steadily until no more instances of IE can be created and script crashes. Link to comment Share on other sites More sharing options...
AutoBert Posted September 13, 2016 Share Posted September 13, 2016 16 minutes ago, Dent said: I'm having the same problem- When you have realy same problem, test the script i posted . After post output of the scite console output. If you have not the same problem open a new thread and don't forget a runable (reproducer) script, showing your issue(s). Link to comment Share on other sites More sharing options...
Dent Posted September 14, 2016 Share Posted September 14, 2016 I was able to work around the problem by re-using the same instances of IE by using _IENavigate instead of _IEQuit and then _IECreate at the new URL. So now the memory leak problem seems to have been solved (if you start IE in non-visible mode then be sure the IE instances have been terminated in Task Manager, if not end the process before restarting the script). Now I have the Recusion level has been exceeded error Link to comment Share on other sites More sharing options...
AutoBert Posted September 14, 2016 Share Posted September 14, 2016 (edited) On 13.9.2016 at 8:57 AM, AutoBert said: If you have not the same problem open a new thread and don't forget a runable (reproducer) script, showing your issue(s). Edited September 14, 2016 by AutoBert Link to comment Share on other sites More sharing options...
Dent Posted September 15, 2016 Share Posted September 15, 2016 I did have the same problem, posting the code was irrelevant. I explained a solution. No need to thank me AutoBert. Link to comment Share on other sites More sharing options...
ixam Posted September 20, 2016 Author Share Posted September 20, 2016 (edited) @AutoBert @Dent @mLipok I have made further progress in narrowing the bug down. It is still the function _IEFrameGetObjByName, that causes the script to crash after to many calls in a while loop. Here the example script from AutoBert to test it: #include <ie.au3> Local $oIE = _IE_Example("iframe") Local $oFrame Local $i=0 Local $tdStart=TimerInit() While 1 Local $oFrame = _IEFrameGetObjByName($oIE, "iFrameTwo") $i+=1 If Not Mod($i,10) Then Sleep(10) If $i>10000 Then ExitLoop WEnd ConsoleWrite(TimerDiff($tdStart)&@TAB&$i& ' Times looped'&@CRLF) _IEQuit($oIE) So I tested this on two Windows 7 PCs and one Windows 10 PC (all with up to date IEs) and the script crashes on both W7s, but works on the W10. So it might be a problem with Windows 7, but I cant say for sure. I also discovered that this problem only occurs with newest version of AutoIt v3.3.14.2, I was able to run the script no problem compiled with AutoIt Version v3.3.12.0 on the Windows 7 PCs, so this seems to be the work around for the time being. Anyway is anyone able to test and confirm my findings? Also should I make a ticket for this, the last AutoIt update was almost exactly 1 year ago, are the developers active anymore? Edited September 21, 2016 by ixam Link to comment Share on other sites More sharing options...
AutoBert Posted September 20, 2016 Share Posted September 20, 2016 3 minutes ago, ixam said: Anyway is anyone able to test and confirm my findings? Also should I make a ticket for this, the last AutoIt update was almost exactly 1 year ago, are the developers active anymore? I have no win7. I suggest test with newest beta on win7. Change this If Not Mod($i,10) Then Sleep(10) ;to If Not Mod($i,10) Then ConsoleWrite($i&@CRLF) Sleep(10) EndIf and if also crashes you should make a ticket. 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