|
|
#1 |
|
Moderator
|
EXECUTE Funktion NTVDM crash
Hallo,
Nachdem im OA4-Handbuch nichts dazu vermerkt ist, möchte ich an dieser Stelle auf ein kleines Problem in OA im Zusammenhang mit der EXECUTE-Funktion hinweisen. Übergibt man einen String mit mehr als 126 Zeichen Länge an die Execute-Funktion, wie z.B. in folgendem Beispiel, so erhält man einen NTVDM-Crash (meist mit Invalid Opcode): Code:
EXECUTE "echo This is a very very long environment string that will exceed the DOS environment string length and therefore crash NTVDM because it exceeds the 126 char limit" OA prüft das allerdings scheinbar nicht ab, bevor es den Aufruf ans DOS weitergibt (vermutlich via INT 2E) und daher schepperts dann. Normalerweise patche ich Fehler ja, aber in diesem Fall ist es kein Fehler und es ist ausreichend, wenn man als Benutzer über die Limitierung bescheid weiß und entsprechend richtig programmiert. Möchte man mehr Daten an ein Programm übergeben, so kann man z.B. die Daten in einer Datei schreiben und dann eine externe Batch-Datei aufrufen, welche die Eingangsdaten verarbeitet. Lg. |
|
|
|
|
|
#2 |
|
Entwickler
|
Ich schreibe noch den Fehler der NTVDM unter Windows 8/8.1/10 dazu, nachdem offenbar die Fehleradresse auch bei anderen an gleicher Stelle zu finden ist; vielleicht hilft es ja.
The NTVDM CPU has encountered an illegal instruction. CS:95e8 IP:9e6c OP:63 6d 64 20 2f |
|
|
|
Antwort schreiben... |
| Themen-Optionen | Thema durchsuchen |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| OA4/WIN7 The NTVDM CPU has encountered an illegal instruction. | waldbauer.com | SPI OA4 Open Access II/III/IV (2,3,4) Anwender Forum | 35 | 15.05.2024 17:20 |
| OA IV Fehlermeldung Systemfehler NTVDM | Hinterholzer | SPI OA4 Open Access II/III/IV (2,3,4) Anwender Forum | 8 | 19.09.2011 09:13 |