Ausgabe variabler Texte

Top  Previous  Next

Die folgenden Meldungen werden einer beliebigen Datei aus dem Verzeichnis moskito\rahmen\messages mit der Endung .DAT entnommen. Alle Meldungen werden durch eine Zeichenkette und eine Zahl bestimmt. Die Zeichenkette sollte den Namen der Prozedur haben, die diese Meldung verwendet. Die Meldungen können auch Parameter wie in printf enthalten.

Um in variablen Meldungen auch Texte ohne abschließenden Zeilenumbruch angeben zu können wird der letzte Zeilenumbruch entfernt. Eine Meldung wird also im Normalfall eine Leerzeile am Ende enthalten.

Quelltext (C-Datei)

long int EXPORTENTRY Dateimeldung(int argc, char *argv[]) {

  // Diese Meldung ist nicht sehr wichtig, nur ein Hinweis

  SYSmessageEx(  "Dateimeldung", 23, MSG_TYPE_HINT,

              "Titel der Dialogbox", "parameter" );

  return 0;

}

Es wird jetzt nach dem Eintrag 'Dateimeldung' gesucht. Gibt es diesen Eintrag, wird dann in der Gruppe 'Dateimeldung' der Eintrag '23' gesucht. Alle Texte die nach der '23' gefunden werden, bis ausschließlich den drei Minuszeichen, gehören zu dieser Meldung. Die Meldung wird genauso ausgegeben, wie sie in der Datei formatiert ist.

Meldungsdatei msg.dat

--- Dateimeldung 23

Dies ist eine Meldung.

Hier wird der Parameter eingesetzt: %s

Der letzte Zeilenumbruch wird entfernt:.

 

---

Die Sonderzeichen %s u.ä. werden genauso behandelt wie in der C-Funktion printf. Es müssen also entsprechend der Formatangabe auch Parameter für diese Einträge angegeben werden. Die Parameter werden in ihrer Reihenfolge, wie sie im Text erscheinen als Parameter in der Routine SYSmessageEx angegeben.