Biblioteki C/C++
FormatMessage
[funkcja] Formatuje daną wiadomość zgodnie z podanymi wytycznymi.Składnia
#include <windows.h>
DWORD WINAPI FormatMessage(
DWORD dwFlags,
LPCVOID lpSource,
DWORD dwMessageId,
DWORD dwLanguageId,
LPTSTR lpBuffer,
DWORD nSize,
va_list * Arguments
);
Argumenty
Zwracana wartość
Funkcja zwraca numer znaków zapisanych w buforze wyjściowym, wyłączając kończący znak NULL.
Opis szczegółowy
Funkcja
FormatMessage formatuje daną wiadomość zgodnie z podanymi wytycznymi, po czym sformatowaną wiadomość kopiuje do bufora wyjściowego. Może być użyta do odebrania tekstowej informacji o błędzie ustawionej funkcją
SetLastError.
W argumencie lpSource można stosować następujące znaki:
Inny znak poprzedzony znakiem procenta będzie sformatowany bez znaku %. Oto kilka przykładów:
Przykładowy kod pokazuje, jak można pobrać tekstowe określenie błędu w danym (domyślnym) języku i wyświetlić je funkcją
MessageBox.:
void AlertLastError()
{
LPVOID lpBuf;
FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(), MAKELANGID( LANG_NEUTRAL, SUBLANG_DEFAULT ),( LPTSTR ) & lpBuf, 1024, NULL );
MessageBox( 0,( char * ) lpBuf, 0, 0 );
LocalFree( lpBuf );
}
Wymagania
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.