Freigeben über


RasGetErrorStringA-Funktion (ras.h)

Die RasGetErrorString--Funktion ruft eine Fehlermeldungszeichenfolge für einen angegebenen RAS-Fehlerwert ab.

Syntax

DWORD RasGetErrorStringA(
  [in]  UINT  ResourceId,
  [out] LPSTR lpszString,
  [in]  DWORD InBufSize
);

Parameter

[in] ResourceId

Gibt den Fehlerwert von Interesse an. Dies sind Werte, die von einer der RAS-Funktionen zurückgegeben werden: die in der RasError.h-Headerdatei aufgeführten.

[out] lpszString

Zeigen Sie auf einen Puffer, der die Fehlerzeichenfolge empfängt. Dieser Parameter darf nicht NULL-sein.

[in] InBufSize

Gibt die Größe des Puffers in Zeichen an, auf den lpszErrorStringverweist.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert ERROR_SUCCESS.

Wenn die Funktion fehlschlägt, ist der Rückgabewert einer der folgenden Fehlercodes oder ein Wert aus Routing- und Remotezugriffsfehlercodes oder Winerror.h. Es gibt keine GetLastError- Informationen, die von der RasGetErrorString--Funktion festgelegt werden.

Wert Bedeutung
ERROR_INVALID_PARAMETER
Ein ungültiger Parameter wurde an die Funktion übergeben.

Bemerkungen

Es gibt keine Möglichkeit, im Voraus die genaue Größe in Zeichen einer Fehlermeldung und damit die erforderliche Puffergröße zu ermitteln. Fehlermeldungen sind in der Regel 80 Zeichen oder weniger groß. Eine Puffergröße von 512 Zeichen ist immer ausreichend. Ein Puffer mit unzureichender Größe bewirkt, dass die RasGetErrorString--Funktion fehlschlägt und ERROR_INSUFFICIENT_BUFFERzurückgibt. Beachten Sie, dass Puffergrößen in Zeichen und nicht in Bytes angegeben werden. Daher erfordert die Unicode-Version von RasGetErrorString- mindestens einen 1024-Bytepuffer, um sicherzustellen, dass jede Fehlermeldung passt.

Beispiele

Der folgende Code ruft eine Fehlerzeichenfolge für den RAS-Fehler 633 ab.


#include <windows.h>
#include <stdio.h>
#include "ras.h"
#include "rasdlg.h"
#include <tchar.h>

#define  ERROR_VAL 633
#define  BUFFER_SIZE 256

DWORD __cdecl wmain(){

    DWORD dwRetVal = ERROR_SUCCESS;
    UINT  uErrorValue = ERROR_VAL;
    DWORD cBufSize = BUFFER_SIZE;
    WCHAR lpszErrorString[BUFFER_SIZE];

    dwRetVal = RasGetErrorString(uErrorValue, lpszErrorString, cBufSize);

    if(dwRetVal == ERROR_SUCCESS){
        wprintf(L"Error Code %d: %s\n", uErrorValue, lpszErrorString);
    }else{
           wprintf(L"RasGetErrorString failed, Return Value: %d", dwRetVal);
    }

    return 0;
}

Anmerkung

Der Ras.h-Header definiert RasGetErrorString als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- ras.h
Library Rasapi32.lib
DLL- Rasapi32.dll

Siehe auch

GlobalAlloc-

LoadString-

übersicht über Ras(Remote Access Service)

Remotezugriffsdienstfunktionen