Array Fehlermeldung
-
- [ offen ]
-
mcbaldrian -
22. November 2013 um 13:08 -
Geschlossen -
Erledigt
-
-
Diese meldung kommt wenn man auf einen nicht definierten Array index zugreifen will z.B.
[autoit]Local $aBeispiel[2][2]
[/autoit]
$aBeispiel[1][1] = "kein Error"
$aBeispiel[1][2] = "Error"; kann nicht ausgeführt werden fehlermeldungdas es jedoch nur bei ausführung unter anderen nutzern zu dem fehler kommt kann eigentlich nur daran liegen das du etwas mit dem array machst was nutzerabhängig ist aber ohne Script oder/und einer genauen erklärung was das Script macht kann man da nicht viel sagen...
-
Servus ,
leider macht das Skript keinen Unterschied zwischen Benutzer Konten das heißt
es macht immer dasselbe nichts nutzerabhängig abhängiges.Das Script kann ich leider nicht hochladen.
Was macht mein Script.
Eine TXT Datei einlesen und nach vordefinierten werten in der TXT Datei suchen
und dann die TXT Datei aufsplittern in mehrere Dateien.Dann diese Datei einem anderem Programm vor die Füße schmeißen und verarbeiten.
Es ist noch eine Überwachung und Fehlerausgabe mit eingebaut.
Im Großen und Ganzen war’s das.
Gruß
Mc Baldrian
-
Ich halte es für möglich, dass der Benutzer keine ausreichenden Berechtigungen hat um die Datei zu lesen. Der eigentliche Fehler liegt aber an mangelhaftem Errorhandling in deinem Code, denn sonst könnte es garnicht zum Absturz kommen, sondern dein Programm würde stattdessen eine detailierte Ausgabe machen was an welcher Stelle nicht geklappt hat und entweder angemessen reagieren, den Anwender fragen oder eben das Programm sauber beenden.
Um den Fehler zu finden bleibt dir nichts anderes übrig als nach jedem Funktionsaufruf die Rückgabewerte und sofern vorhanden Errorcodes auszuwerten. Details was eine Funktion im Fehlerfall zurückgibt werden im jeweiligen Hilfeeintrag beschrieben.
Kurzes Beispiel wie das ausschaun könnte bzw.immer sollte:
[autoit]
[/autoit]
#include <File.au3>
$filepath = "C:\test.txt"
dim $adata
$debug = _filereadtoarray($filepath,$aData)
if $debug = 0 then
msgbox(0,"Fehler beim Datei einlesen","Errorcode: " & @error)
exit ; pech hat nicht geklappt, also abbrechen
else ; alles ok
if ubound($adata) >= 3 then
consolewrite($adata[2] & @crlf) ; alles ok, irgendwas mit Zeile 2 machen
else ; pech Zeile 2 gibts garnicht
msgbox(0,"Fehler","Die Textdatei enthält weniger als 2 Zeilen, daher abbruch")
exit
endif
endif