Jupp, also erstmal das Goto ist hier sowieso nutzlos,
denn mit [
OH]Break;[/
OH] die Schleife abbrechen reicht vollkommen,
denn das IF vor dem Meldung überspringt diesen Teil sowieso.
Außerdem Doppelte Infos:
Wieso ItemFound, wenn Result die
selbe Information enthält?
Zitat:
Lesen von Adresse 00000000
Die Null sagt dir, dass da auf ein NIL zugegriffen wird.
00000000 oder 00000
123 ist alles NIL, letzteres mit einem Offset, z.B. wenn man auf eine Variable zugreift, die ja bissl unterhalb der gezeigten Adresse liegt.
NIL lässt sich ja leicht prüfen.
Bei großen Zeigern-Adressen ist ein "ungültiger" Zeiger schuld,
wie z.B. eine nicht-initialisierte Variable oder ein Zeiger auf ein Objekt, welches bereits freigegeben wurde.
Zitat:
Zugriffsverletzung bei Adresse 0043815C in Modul 'xxx.exe'
Nennt dir die Stelle ... die könnte man z.B. im Debugger (CPU-Ansicht) oder in der MAP-Datei bzw. Debuginfos suchen.
Die Adresse hilft aber selten, da es die Stelle ist wo es knallte, aber meistens eine aufrufende Stelle den Fehler verursachte,
drum schaut man in den Stacktrace, von wo es her kam. (Debugger, Eurekalog oder Dergleichen)
Egal was du machst, ich empfehle die Benutzung des Debuggers, um die Zeile zu bekommen wo es knallte.
Wir können hier nicht helfen, da uns niemand gesagt hat WO es knallt (Zeile)
und wir auch garnicht wiessen was Vaiablen außerhalb des gezeigten Codes drin seht.
Der Code selber hat jetzt erstmal scheinbar keine "gravirenden" Fehler, die mit jetzt direkt ins Auge gefallen sind.
Abgesehn von unnötigen Variablen, unnötigen Sprüngen und bissl sinnfreien Kommentaren (was die machen erklärt bereits der Name)
Obwohl: Warum fehlt "OPCUA" in den Methodennamen? Und dann sind die Kommentare plötzlich komplett nutzlos.