AutoIt3.exe ended.rc:-1073741819

  • Hallo zusammen,
    mit ist aufgefallen, dass seit der v. 3.3.10.2 das COM Error Handling in AutoIt anders funktioniert.
    Ich habe eine Funktion, die mir aus der WMI die Konfiguration einer Netzwerkkarte ausliest und das Ergebnis in ein Array speichert.
    z.B. so:

    [autoit]


    $iCount = 0
    $strQuery = "SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = 'TRUE'"
    $objWMIService = ObjGet("winmgmts:" & @ComputerName & "\root\CIMV2")
    $colNICs = $objWMIService.ExecQuery($strQuery, "WQL", $wbemFlagReturnImmediately + $wbemFlagForwardOnly)
    For $NIC In $colNICs
    ReDim $aNicConfig[$iCount+1][6]
    $aNicConfig[$iCount][0] = $NIC.IPAddress(0)
    $aNicConfig[$iCount][1] = $NIC.IPSubnet(0)
    $aNicConfig[$iCount][3] = $NIC.DefaultIPGateway(0)
    $aNicConfig[$iCount][4] = $NIC.MACAddress
    $aNicConfig[$iCount][5] = $NIC.DHCPServer
    $iCount += 1
    Next

    [/autoit]

    es gibt auch ein Event Error Handling durch

    [autoit]


    Global $oNetEventError = ObjEvent("AutoIt.Error","__NetEventErrorFunc")

    [/autoit][autoit][/autoit][autoit]

    Func __NetEventErrorFunc()
    $iNetEventErrorCode = Hex($oNetEventError.number,8)
    $sNetEventErrorDescription = $oNetEventError.windescription
    $bNetEventError = True
    EndFunc

    [/autoit]

    Diese Funktion benutze ich schon lange und die hat bis jetzt auch anstandslos funktioniert. Erst seit dem ich das Skript mit der v. 3.3.10.2 kompiliert habe stürzt AutoIt ab wenn z.B. ein Eigenschaftsfeld leer ist.
    Beispiel: ist bei der Netzwerkkarte das Default Gateway nicht gesetzt, stürz AutoIt bei der Zeile $aNicConfig[$iCount][3] = $NIC.DefaultIPGateway(0) ab.
    Früher war das nicht der Fall. Konnte jemand von euch evtl. ein ähnliches Verhalten feststellen? Ist das evtl. ein Bug in AutoIt oder übersehe ich da was?

    Vielen Dank schon mal für das Feedback.

    Einmal editiert, zuletzt von edmann (8. Mai 2014 um 20:07)