Hallo,
wenn eine exe Datei kompiliert ist, wird mit dem Befehl „@ScriptLineNumber“ immer die Zeilennummer „-1“ ausgegeben. Soweit auch aus der Hilfe entnehmbar.
Welche praktischen Workaround kennt oder nutzt Ihr, um die Script-Zeilennummern bei einer Fehlermeldung, die bei Ausführung der kompilierten exe an irgendeiner Stelle erscheint, für das Skript nachvollziehbar anzeigen zu lassen?
Die aufwändigste Lösung, die mir einfällt, ist es, vor jeder Befehlszeile eine Variable $Zeilennummer = ... einzufügen. Aber selbst dann würde bei einer Fehlermeldung durch die kompilierte exe Datei diese Zeilennummer nicht ausgegeben werden. Oder gibt es Möglichkeit, diese bei einer Fehlermeldung anzeigen zu lassen?
... z.B. eine Funktion, die immer dann ausgeführt wird, wenn in der exe Datei eine Fehlermeldung angezeigt wird?
Wie schafft man den Spagat, bei einer Fehlermeldung in einer kompilierten exe Datei, die zugehörige Zeile im Skript zu finden?
Wie könnte man eine Log-Datei erstellen, die beim Ausführen einer exe Datei jede Befehlszeile speichert? Geht wahrscheinlich nicht auf Grund der exe Struktur.
Nicht immer ist es so einfach, dass man aus dem Kontext auf die Stelle schließen kann, wie im folgenden Beispiel:
ShellExecute("r:\123")
Fehlermeldung der kompilierten exe-Datei:
[Window Title]
r:\123
[Content]
"r:\123" konnte nicht gefunden werden. Stellen Sie sicher, dass Sie den Namen richtig eingegeben haben und wiederholen Sie den Vorgang.
[OK]
Am besten wäre es natürlich, wenn es fehlerfrei läuft. Aber wenn auf dem PC was erstellt wird, was als exe auf dem Laptop in einen Fehler läuft, ist die Suche schon kompliziert. Noch komplizierter wird es, wenn ein Freund die exe auf seinem Rechner nutzt und es kommt dort eine Fehlermeldung, die keinen Bezug auf die Scriptzeile erkennen lässt.
Eure Erfahrungen sind gefragt.
Danke