FormatErrorMsg

Gibt den Beschreibungstext für einen angegebenen Systemfehlercode aus.

Archivierter Inhalt: Dieser Quelltext ist derzeit inaktiv und möglicherweise veraltet, nicht mehr gewartet oder funktioniert nicht mehr.

Wenn ein Fehler auftritt, gibt es mit der GetLastError-Funktion eine entsprechende Nummer. Deren Bedeutung ist aber kein bisschen offensichtlich und sie so dem Benutzer zu präsentieren macht ihn auch nicht glücklicher. Für diesen Zweck lässt sich in Windows zu jeder Fehlernummer eine Beschreibung abfragen, die die Umstände des Fehlers ein wenig erklärt. Sogar in der Sprache, in der das Betriebssystem installiert oder eingestellt ist. Da das in C++ aber etwas umständlich ist, gibt es hier den Code, der das alles erledigt.

Hinweis zur Codequalität: Der Inhalt auf dieser Seite ist möglicherweise etwas angestaubt. Ich nutze C++ seit längerer Zeit nicht mehr, möchte aber die vorhandenen und früher einmal nützlichen Funktionen weiterhin anbieten.

Download

FormatErrorMsg.cpp528 BQuelltext der FormatErrorMsg-Funktion

Inhalt der Datei FormatErrorMsg.cpp:

// Returns the system description for the specified error code.
//
// Dependencies: CString
//
// Web: http://unclassified.software/source/formaterrormsg
//
CString FormatErrorMsg(DWORD dwErr)
{
    LPVOID lpMsgBuf;
    CString msg;

    FormatMessage(
        FORMAT_MESSAGE_ALLOCATE_BUFFER |
        FORMAT_MESSAGE_FROM_SYSTEM |
        FORMAT_MESSAGE_IGNORE_INSERTS,
        NULL,
        dwErr,
        MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),   // Default language
        (LPTSTR) &lpMsgBuf,
        0,
        NULL
    );
    msg = (char *) lpMsgBuf;
    LocalFree(lpMsgBuf);
    return msg;
}

Lizenz und Nutzungsbedingungen

Diese Software ist als kompilierte Version und im Quelltext frei und uneingeschränkt verfügbar („Public Domain“). Ich gebe keine Garantie, auch nicht auf Lauffähigkeit oder Benutzbarkeit. Die Nutzung erfolgt auf eigene Gefahr, ich hafte nicht für Schäden, die durch sachgemäßen oder unsachgemäßen Gebrauch dieses Programms entstehen.

Statistische Daten

  • Erstellt am 2007-04-02.