SYSmessageString

Top  Previous  Next

Holt einen Meldungstext aus der Meldungsdatei.

Moskito verfügt über zwei verschiedene Dateien mit Meldungen. Die erste, FEHLER.DAT, enthält die länderspezifischen Meldungen zu den von Moskito generierten Fehlermeldungen. Die zweite, MELDUNG.DAT, enthält Texte, die von Moskito und den Userfunktionen ausgegeben werden sollen. Eine solche Meldung wird über einen Wert vom Typ MESSAGE identifiziert. Dies ist ein Fließkommawert, der durch einen Zeiger auf einen Text und die Nummer der Meldung gebildet wird. Der Text spezifiziert das Modul, aus dem die Meldung stammt. Der Wert des Zeigers wird als ganzzahliger Anteil des Fließkommawertes gespeichert. Der Nachkommaanteil ergibt sich aus der Fehlernummer. Dazu wird diese Nummer durch 1000 geteilt und auf den Wert des Zeigers addiert. Statt dies von Hand zu kodieren kann auch das Makro MAKE_MSG_STRING oder MAKE_MSG_STRING_NODEFAULT benutzt werden. Der von SYSmessageString und SYSerrorString, also auch von MAKE_MSG_STRING zurückgegebene Text ist mit Malloc erzeugt worden und muss dementsprechend nach der Benutzung wieder mit Free beseitigt werden. Den Aufbau der Meldungsdateien entnehmen Sie bitte dem entsprechenden Kapitel.

Parameter

msg (char *)                                                 [IN]

Zeichenkette, die die Gruppe der Meldungen spezifiziert. Dieser Text kann frei gewählt werden, sollte aber mit dem Namen der  Funktion übereinstimmen, damit keine Überschneidungen geschehen.

nummer (int)                                                [IN]

Nummer der Meldung innerhalb der Gruppe. Es gibt nur jeweils eine Meldung mit jeder Kombination msg/nummer.

doDefault (int)                                              [IN]

Wenn dieser Parameter TRUE enthält, dann wird auch dann eine Meldung erzeugt, wenn sich kein Eintrag für diese Meldungsnummer in der Datei befindet. Wenn der Parameter FALSE enthält, dann wird in diesem Fall NULL als Rückkehrwert geliefert.

Ergebnis

(char *)                                                     [OUT]

Zeiger auf einen Text mit der Meldung aus der Datei MELDUNG.DAT. Der Text ist mit Malloc erzeugt worden und muss mit Free wieder entsorgt werden.

Deklaration

#include "basic.h"

 

char *DLLENTRY SYSmessageString(

                 char *msg,

                 int nummer,

                 int doDefault

);

Weitere Deklarationen

Die beiden Makros liefern den Text einer Meldung zurück.

#define MAKE_MSG_STRING(modul,nummer) \

  SYSmessageString(((LONG)modul)+0.001*nummer,TRUE)

#define MAKE_MSG_STRING_NODEFAULT(modul,nummer) \

  SYSmessageString(((LONG)modul)+0.001*nummer,FALSE)