Jump to content
Sign in to follow this  
6105

Error stop script

Recommended Posts

6105

Hello,

pls can someone give some tips how to stop error.

I have an error in script what stop work.

Error code:

C:Documents and SettingsTeodesktopodno.au3 (37) : ==> The requested action with this object has failed.:
FileWrite($odno, $oLink.href & @CRLF)
FileWrite($odno, $oLink.href ^ ERROR

script part:

Func _GetFriends()
$a = $a+1
ConsoleWrite('$a = '&$a)
_IELoadWait($oIE)
FileDelete(@DesktopDir&"/test.txt")
$oLinks = _IELinkGetCollection($oIE)
$iNumLinks = @extended
ConsoleWrite('  2. Links Found: ' & $iNumLinks & @CRLF)
  For $oLink in $oLinks
   FileWrite($odno, $oLink.href & @CRLF)
   $check = _StringBetween($oLink.href, "chatWith=", "&tkn=")
   If not @error then FileWrite(@DesktopDir&'/friends.txt',$oLink.href&@CRLF)
   $check = _StringBetween($oLink.href, "st.page=","&tkn=")
   If not @error Then
    $string=_ArrayToString($check)
    If $a < 9 Then
     $result = StringLeft($string, 1)
    Else
     $result = StringLeft($string, 2)
    EndIf
    If $result > $a Then
     ConsoleWrite ('I found it: '&$result& ' link: ' & $oLink.href & @CRLF)
     _IENavigate($oIE,$oLink.href)
     _GetFriends()
    EndIf
   EndIf
  Next
EndFunc ; ==> _GetFriends

In 3 lines that have all needed variables.. i think something stop it on line 1.

I have tried to make something like

if $oLinks.href == '' then exitloop

But that code also give error on "$oLinks.href"

That work successful when $iNumLinks is about 40.. but in case of ~25 that always give error..

Thank you so much for any tips.

Edited by toader

[center][font=courier new,courier,monospace]Die die die my darling[/font][/center][center][font=courier new,courier,monospace]Don't utter a single word[/font][/center][center][font=courier new,courier,monospace]Die die die my darling[/font][/center][center][font=courier new,courier,monospace]Just shut your pretty mouth[/font][/center][center][font=courier new,courier,monospace]I'll be seeing you again[/font][/center][center][font=courier new,courier,monospace]I'll be seeing you[/font][/center][center][font=courier new,courier,monospace]In hell[/font][/center]

Share this post


Link to post
Share on other sites
water

if $oLinks.href == '' then exitloop
is wrong because $oLinks is a collection of link objects. You need to access $oLink

Before accessing the property of an object you could test if it's an object:

If Not IsObj($oLink) Then ExitLoop ; Or whatever you want to do
  • Like 1

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2018-10-19 - Version 1.4.10.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (2018-10-31 - Version 1.3.4.1) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
PowerPoint (2017-06-06 - Version 0.0.5.0) - Download - General Help & Support
Excel - Example Scripts - Wiki
Word - Wiki
 
Tutorials:

ADO - Wiki

 

Share this post


Link to post
Share on other sites
6105

THANK YOU SO MUCH for so fast replay !!! :oops:


[center][font=courier new,courier,monospace]Die die die my darling[/font][/center][center][font=courier new,courier,monospace]Don't utter a single word[/font][/center][center][font=courier new,courier,monospace]Die die die my darling[/font][/center][center][font=courier new,courier,monospace]Just shut your pretty mouth[/font][/center][center][font=courier new,courier,monospace]I'll be seeing you again[/font][/center][center][font=courier new,courier,monospace]I'll be seeing you[/font][/center][center][font=courier new,courier,monospace]In hell[/font][/center]

Share this post


Link to post
Share on other sites
6105

Sorry.. but that also don't help :oops::bye::doh:

$oLink is Object
$oLink is Object
$oLink is Object
C:Documents and SettingsTeodesktopodno.au3 (44) : ==> The requested action with this object has failed.:
FileWrite($odno, $oLink.href & @CRLF)
FileWrite($odno, $oLink.href ^ ERROR
->12:29:52 AutoIT3.exe ended.rc:1
>Exit code: 1   Time: 17.723

$oLink is Object ;) but with bug..

Edited by toader

[center][font=courier new,courier,monospace]Die die die my darling[/font][/center][center][font=courier new,courier,monospace]Don't utter a single word[/font][/center][center][font=courier new,courier,monospace]Die die die my darling[/font][/center][center][font=courier new,courier,monospace]Just shut your pretty mouth[/font][/center][center][font=courier new,courier,monospace]I'll be seeing you again[/font][/center][center][font=courier new,courier,monospace]I'll be seeing you[/font][/center][center][font=courier new,courier,monospace]In hell[/font][/center]

Share this post


Link to post
Share on other sites
water

Could you please install the UDFs error handler by putting this at the top of your script (somewhere after #include <ie.au3>):

$iResult = _IEErrorHandlerRegister()
If $iResult <> 1 then MsgBox(0, "", "_IEErrorHandlerRegister: Error " & @error)

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2018-10-19 - Version 1.4.10.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (2018-10-31 - Version 1.3.4.1) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
PowerPoint (2017-06-06 - Version 0.0.5.0) - Download - General Help & Support
Excel - Example Scripts - Wiki
Word - Wiki
 
Tutorials:

ADO - Wiki

 

Share this post


Link to post
Share on other sites
6105

Sorry for so long delay for replay.. Yes here is some error on last "for":

I found it: 16 link: http://xxx/dk?cmd=Friends&page=16
$a = 16  2. Links Found: 23
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
$oLink is Object
--> COM Error Encountered in odno.au3
----> $IEComErrorScriptline = 46
----> $IEComErrorNumberHex = 80070005
----> $IEComErrorNumber = -2147024891
----> $IEComErrorWinDescription = Access is denied.
----> $IEComErrorDescription =
----> $IEComErrorSource =
----> $IEComErrorHelpFile =
----> $IEComErrorHelpContext = 0
----> $IEComErrorLastDllError = 0
--> COM Error Encountered in odno.au3
----> $IEComErrorScriptline = 47
----> $IEComErrorNumberHex = 80070005
----> $IEComErrorNumber = -2147024891
----> $IEComErrorWinDescription = Access is denied.
----> $IEComErrorDescription =
----> $IEComErrorSource =
----> $IEComErrorHelpFile =
----> $IEComErrorHelpContext = 0
----> $IEComErrorLastDllError = 0
--> COM Error Encountered in odno.au3
----> $IEComErrorScriptline = 49
----> $IEComErrorNumberHex = 80070005
----> $IEComErrorNumber = -2147024891
----> $IEComErrorWinDescription = Access is denied.
----> $IEComErrorDescription =
----> $IEComErrorSource =
----> $IEComErrorHelpFile =
----> $IEComErrorHelpContext = 0
----> $IEComErrorLastDllError = 0
$oLink is Object

Last links of Object 21,22 and 23:

http://xxx/dk?cmd=friendMain&friendId=ovqhoidgzrljhrcod0qilrjuzcdbreyfwok
http://xxx/dk?cmd=userFriends&st.page=15&tkn=5317
http://xxx/dk?cmd=userMain

That is standard links code parsed about 147 links before this error.

Also that is last page and last 3 links...

Line 38-63 FOR

For $oLink in $oLinks
If IsObj($oLink) == 0 Then
  MsgBox(0,'','that is not obj')
Elseif IsObj($oLink) == 1 Then
  ConsoleWrite('$oLink is Object'&@CRLF)
Else
  ConsoleWrite('i don"t know'&@CRLF)
EndIf
   FileWrite($odno, $oLink.href & @CRLF) ;line 46
   $check = _StringBetween($oLink.href, "chatWith=", "&tkn=") ;line 47
   If not @error then FileWrite(@DesktopDir&'/friends.txt',$oLink.href&@CRLF) ;line 48
   $check = _StringBetween($oLink.href, "st.page=","&tkn=")
   If not @error Then
    $string=_ArrayToString($check)
    If $a < 9 Then
     $result = StringLeft($string, 1)
    Else
     $result = StringLeft($string, 2)
    EndIf
    If $result > $a Then
     ConsoleWrite ('I found it: '&$result& ' link: ' & $oLink.href & @CRLF)
     _IENavigate($oIE,$oLink.href)
     _GetFriends()
    EndIf
   EndIf
  Next

Also i have it when script is started... but that errors is from start and don't stop work of script:

1. Navigate to Login Page
--> IE.au3 V2.4-0 Warning from function _IEFormElementGetObjByName, $_IEStatus_NoMatch
--> IE.au3 V2.4-0 Warning from function _IEFormElementGetObjByName, $_IEStatus_NoMatch
--> IE.au3 V2.4-0 Warning from function _IEFormElementGetObjByName, $_IEStatus_NoMatch
--> IE.au3 V2.4-0 Error from function _IEFormElementSetValue, $_IEStatus_InvalidDataType
--> IE.au3 V2.4-0 Error from function _IEFormElementSetValue, $_IEStatus_InvalidDataType
--> IE.au3 V2.4-0 Error from function _IEAction, $_IEStatus_InvalidDataType
2. Navigate to Main Page

All time from start this for don't make any errors... after repeating about 16 times at finish errors are shown :oops:

Edited by toader

[center][font=courier new,courier,monospace]Die die die my darling[/font][/center][center][font=courier new,courier,monospace]Don't utter a single word[/font][/center][center][font=courier new,courier,monospace]Die die die my darling[/font][/center][center][font=courier new,courier,monospace]Just shut your pretty mouth[/font][/center][center][font=courier new,courier,monospace]I'll be seeing you again[/font][/center][center][font=courier new,courier,monospace]I'll be seeing you[/font][/center][center][font=courier new,courier,monospace]In hell[/font][/center]

Share this post


Link to post
Share on other sites
water

As I now can see some more of your code I see some "trigger" words like "login page".

What do you exactly try to do?

Do you automatically login to a web page and then grab some links?

Please elaborate bevore we can give further advice.


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2018-10-19 - Version 1.4.10.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (2018-10-31 - Version 1.3.4.1) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
PowerPoint (2017-06-06 - Version 0.0.5.0) - Download - General Help & Support
Excel - Example Scripts - Wiki
Word - Wiki
 
Tutorials:

ADO - Wiki

 

Share this post


Link to post
Share on other sites
6105
Ok, thanks..

[center][font=courier new,courier,monospace]Die die die my darling[/font][/center][center][font=courier new,courier,monospace]Don't utter a single word[/font][/center][center][font=courier new,courier,monospace]Die die die my darling[/font][/center][center][font=courier new,courier,monospace]Just shut your pretty mouth[/font][/center][center][font=courier new,courier,monospace]I'll be seeing you again[/font][/center][center][font=courier new,courier,monospace]I'll be seeing you[/font][/center][center][font=courier new,courier,monospace]In hell[/font][/center]

Share this post


Link to post
Share on other sites
Melba23

toader,

I have just locked the other thread in which you posted a similar script. Please do not post any more scripts which break the Forum Rules - two in a day is quite enough. :oops:

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

  • Similar Content

    • vati1011
      By vati1011
      Hey, guys.
      Currently, I'm using Opencv UDF and i'm  encountering issues with DLLOPEN(). it is failing and returning -1
      But, I cannot figure out why it is failing.
      I need help from people.
      I'm running windows 10 32bit.
      This's my code.
      #RequireAdmin $fileopen = DllOpen("opencv_core2413.dll") MsgBox(0,"Result",$fileopen) Example.au3opencv_core2413.dll
    • faustf
      By faustf
      hi guys how is possible set a speed of  all function _Ie ?? 
    • Danyfirex
      By Danyfirex
      Hello guys.  It's been awhile since I shared something. So today I want to share my last project.
      What's Loga?
      Loga is a simple logging library to keep track of code with an integrated console.
      Features.
      Common log levels. Integrated console. Multiple instances. Custom color and font for each instance log level. Define output format with macros. Conditional and occasional Logging. Easy to use. Basic Usage:
      #include "..\Loga.au3" ;This are some of the default settings: ;Default log level $LOGA_LEVEL_TRACE ;output format: {Symbol}{LogIndex} {LevelName} {LongDateTime} {Message} ;Log to File is enabled. ;Log file name format: YYYYMMDDHHMM-Loga-InstanceIndex.log ;Custom Console is disabled by default. ;By default log to STDOUT. _LogaTrace("I'm Trace") _LogaDebug("I'm Debug") _LogaInfo("I'm Info") _LogaWarn("I'm Warn") _LogaError("I'm Error") _LogaFatal("I'm Fatal")  
      More examples here.
       
      Check Loga on GitHub.
       
      Loga Latest Release v1.0.1.
       
      Saludos
       
       
       
       
    • xiantez
      By xiantez
      This script used to work on an older version of AutoIT. Currently I am running AutoIT v3.3.14.5 and it's failing.
      Func PublicIP() ;Post public facing IP address Local $url = 'https://www.google.com/search?client=opera&q=what+is+my+ip&sourceid=opera&ie=UTF-8&oe=UTF-8' Local $getIPaddress = BinaryToString(InetRead($url)) Local $sStart = 'clamp:2">' Local $sEnd = '</div>' Local $ipaddress = _StringBetween($getIPaddress, $sStart, $sEnd For $i In $ipaddress MsgBox(0, 'External IP', "Your public IP address is " & $i) Next EndFunc ;==>PublicIP The console output shows:
      "C:\Users\user\Documents\AutoIT\Scripts\WSI Tools.au3" (197) : ==> Variable must be of type "Object".: For $i In $ipaddress For $i In $ipaddress^ ERROR ->14:12:16 AutoIt3.exe ended.rc:1 +>14:12:16 AutoIt3Wrapper Finished. >Exit code: 1 Time: 9.811
    • Xandy
      By Xandy
      I'm listing the error message strings, and roughly matching the error code
      Is this how to do error reporting?  Is there a more simple way I don't know about?
      I realise I might not need to trap @error inside $error.  I like it this way b/c I have no fear of overwriting @error now; I don't even use it.
      Func Send_Connect($address, $port)     $socket = TCPConnect($address, $port)     $error = @error     If $error <> 0 Then         Local $aError[4] = ["-2 not connected.", _                             "1 IPAddr is incorrect.", _                             "2 port is incorrect."]         $aError[3] = "10060 Connection timed out."         If $error < 0 Then $error = 0         If $error > 2 Then $error = 3         MsgBox(0, "TCP Connect Error", $aError[$error], 0)         $socket = 0     EndIf     Return $socket EndFunc
×