Partager via


RasGetErrorStringA, fonction (ras.h)

La fonction RasGetErrorString obtient une chaîne de message d’erreur pour une valeur d’erreur RAS spécifiée.

Syntaxe

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

Paramètres

[in] ResourceId

Spécifie la valeur d’erreur d’intérêt. Il s’agit de valeurs retournées par l’une des fonctions RAS : celles répertoriées dans le fichier d’en-tête RasError.h.

[out] lpszString

Pointeur vers une mémoire tampon qui reçoit la chaîne d’erreur. Ce paramètre ne doit pas être NULL.

[in] InBufSize

Spécifie la taille, en caractères, de la mémoire tampon pointée par lpszErrorString.

Valeur de retour

Si la fonction réussit, la valeur de retour est ERROR_SUCCESS.

Si la fonction échoue, la valeur de retour est l’un des codes d’erreur suivants ou une valeur de Codes d’erreur d’acheminement et d’accès à distance ou Winerror.h. Il n’existe aucune information GetLastError définie par la fonction RasGetErrorString.

Valeur Signification
ERROR_INVALID_PARAMETER
Un paramètre non valide a été passé dans la fonction.

Remarques

Il n’existe aucun moyen de déterminer à l’avance la taille exacte en caractères d’un message d’erreur, et par conséquent la taille de la mémoire tampon requise. Les messages d’erreur sont généralement de 80 caractères ou moins de taille ; une taille de mémoire tampon de 512 caractères sera toujours adéquate. Une mémoire tampon de taille insuffisante entraîne l’échec de la fonction RasGetErrorString, en retournant ERROR_INSUFFICIENT_BUFFER. Notez que les tailles de mémoire tampon sont spécifiées en caractères, et non en octets ; Ainsi, la version Unicode de RasGetErrorString nécessite au moins une mémoire tampon d’octets 1024 pour garantir que chaque message d’erreur s’adapte.

Exemples

Le code suivant obtient une chaîne d’erreur pour l’erreur RAS 633.


#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;
}

Note

L’en-tête ras.h définit RasGetErrorString en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
client minimum pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
serveur minimum pris en charge Windows 2000 Server [applications de bureau uniquement]
plateforme cible Windows
d’en-tête ras.h
bibliothèque Rasapi32.lib
DLL Rasapi32.dll

Voir aussi

GlobalAlloc

loadString

Vue d’ensemble service d’accès à distance (RAS)

fonctions de service d’accès à distance