Fehlersuche in Scripten
- Grundlagen zum mIRC Scripting
- mIRC Befehle
- Variablen im mIRC Scripting
- Identifiers im mIRC
- Der Editor des mIRC
- mIRC Aliases Tutorial
- Die mIRC Popupmenüs
- mIRC Remote
- >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Fehlersuche <<< aktuelle Seite >>>>
- Abfragen im mIRC
- Schleifen im mIRC
- Timer im mIRC
- Special Remote Raw & CTCP
- mIRC Arbeiten mit Textdateien
- mIRC – Scripte / Addons / Module
mIRC Scripting: Fehlersuche in Scripten
Nachdem wir nun die ersten kleinen Scripte geschrieben haben, sollte wir uns darum kümmern wie man Fehler in den Scripten findet. Es gibt zwei Arten von Fehlern, das sind Syntaxfehler und Logikfehler. Syntaxfehler können sein: Eine vergessene Klammer, ein falsch geschriebener Befehl oder ein falscher Parameter. Solche Fehler sind meist sehr leicht zu finden weil mIRC bei den meisten eine Fehlermeldung erzeugt. Diese Fehlermeldung sieht in etwa wie folgt aus:
/if: invalid format (line 2, boardtest.ini)
Diese Fehlermeldung hält reichlich Informationen für uns bereit. In der Klammer steht die Zeile (line 2) in der ein Fehler auftrat und die Datei (boardtest.ini) in der das Script ist. Desweiteren erfahren wir das es in der Zeile eine /if Abfrage gibt welche ein falsches Format hat. Damit lässt sich der Fehler also ziemlich leicht finden. Eine Möglichkeit fehlende geschweifte Klammern zu finden ist der Button rechts oben im Editor mit den zwei geschweiften Klammern. Außerdem erzeugt ein Klammerpaar im Code immer einen Einzug, so wie er auch hier im Tutorial gezeigt wird. Somit lassen sich fehlende Klammern auch leicht durch die fehlenden Einzüge im Scriptcode entdecken. Das wäre eigentlich alles zu Syntaxfehlern.
Logikfehler finden
Bei Logikfehler ist die Suche schon etwas aufwendiger. Dazu nehmen wir als Erstes mal ein Beispielskript welches wir später mit /echo Befehlen ausstatten, um den Ablauf in allen Einzelheiten zu prüfen.
Dies ist eine simple Funktion die im Channel #Testraum Tipps an Mitglieder ausgibt. Wie die Textdateien genau aussehen oder die Ausgabe dieser Funktion muss uns dabei nicht interessieren. Wir wollen aber nun wissen ob die Funktion richtig läuft oder warum nicht. Dazu bauen wir in die Funktion diverse /echo Befehle ein, um die Zustände und Abläufe genau zu prüfen. Hier jetzt also das gleiche Script mit den /echo Befehlen.
Nun können wir genau sehen wie das Script abläuft und welche Zustände die Identifier und Variablen haben. Ich erkläre nun die /echo Befehle im einzelnen. Alle /echo Meldungen werden im Statusfenster ausgegeben. Liest man die erste Meldung (Tipps triggert!) weiss man das der Remote ausgelöst wurde. Die zweite und die dritte Meldung (Mitgliedsstatus ist:…; Mitgliedtest bestanden!) könnte man auch abwechselnd einsetzen. Bei der letzten Meldung (Variable tipp ist:…) wird der Wert der Variablen ausgegeben also der Tipp der auch im Raum erscheinen sollte. Ich hoffe es ist euch klar geworden warum ich die einzelnen Echos eingebaut habe. Ihr müsst in der Praxis wissen wo es Sinn macht diese /echo Befehle einzubauen um die Zustände und Werte zu prüfen. Ansonsten ist es wichtig das Script nicht nur auf richtigen Ablauf zu prüfen, sondern auch auf falschen. Das heißt das auch mal ein Nichtmitglied !tipp eingeben sollte um zu sehen ob das Script nicht ausgeführt wird. Dieser Test ist mindestens genauso wichtig wie die richtige Ausführung zu prüfen.
So viel zur Fehlerprüfung. Und verlasst euch darauf ihr werdet Fehler machen, wie jeder Andere auch, einschließlich mir. Deshalb ist die Fehlersuche so wichtig und auch das lernen wie man Scripte richtig testet.
mIRC Workshop: Tutorial: Abfragen im mIRC