CException::GetErrorMessage

virtual BOOL GetErrorMessage (LPTSTR LpszError, UINT nMaxError, PUINT PnHelpContext = NULL);

Rückgabewert

Ungleich NULL, wenn die Funktion erfolgreich ist; andernfalls steht 0, wenn keine Text Fehlermeldung.

Parameter

lpszError

Ein Zeiger auf einen Puffer, der eine Fehlermeldung angezeigt wird.

nMaxError

Die maximale Anzahl von Zeichen, die der Puffer enthalten kann, einschließlich des NULL -Terminators,.

pnHelpContext

Die Adresse des ein UINT , die die Kontext-ID Hilfe erhalten Wenn NULL, keine ID zurückgegeben werden.

Bemerkungen

Rufen Sie diese Memberfunktion um Text zu einem Fehler bereit, die aufgetreten ist. Rufen Sie z. B. GetErrorMessage abrufen, eine Zeichenfolge, die den Fehler verursacht MFC ein CFileException zu werfen, wenn Sie um ein CFile -Objekt zu schreiben.

Hinweis GetErrorMessage werden nicht mehr als nMaxError-1 Zeichen in den Puffer kopiert wird, und es immer eine nachgestellte &Null, die string.nbsp zu beenden; Wenn der Puffer zu klein ist, kann die Fehlermeldung abgeschnitten werden.

Beispiel

Hier ist ein Beispiel für die Verwendung von CException::GetErrorMessage.

   CFile FileInput;
   CFileException ex;

/ / versuchen, eine Datei zum Lesen öffnen.
   / / Die Datei wird sicherlich nicht
   / / existiert, denn es zu viele gibt explizite
   / / Verzeichnisse im Namen.

/ / Wenn der Aufruf von Open() fehlschlägt, werden ab
   / / Initialisiert mit Ausnahme
   / / information.nbsp; der Aufruf von ex.GetErrorMessage()
   / / wird eine entsprechende Meldung, die beschreibt abrufen
   / / die Fehler, und wir werden unseren eigenen Text hinzufügen
   / / sicherstellen, dass der Benutzer ist vollkommen sicher, was
   / / schief gelaufen ist.
   
   Wenn (! fileInput.Open ("\\Too\\Many\\Bad\\Dirs.DAT", CFile::modeRead & Ex))
   {
      TCHAR SzCause [255];
      CString strFormatiert;

Ex.GetErrorMessage (SzCause, 255);

/ / (im realen Leben, ist es wahrscheinlich mehr
      / / zu lesen von entsprechenden
      / / eine Zeichenfolgenressource, so wäre es leicht zu
      / / lokalisieren)

strFormatiert = _T ("die Datei konnte nicht geöffnet werden, weil für diesen Fehler:");
      strFormatiert += SzCause;

AfxMessageBox(strFormatted);
   }
   anderes
   {
      / / die Datei geöffnet wurde, also tun was auch immer Arbeit
      / / mit FileInput
      / / Wir planten...
      // :

fileInput.Close();
   }

CException Übersicht |nbsp; Member der Klasse | Hierarchiediagramm

Siehe auch&Nbsp;CException::ReportError

Index