Функция RasGetErrorStringA (ras.h)
Функция RasGetErrorString получает строку сообщения об ошибке для указанного значения ошибки RAS.
Синтаксис
DWORD RasGetErrorStringA(
[in] UINT ResourceId,
[out] LPSTR lpszString,
[in] DWORD InBufSize
);
Параметры
[in] ResourceId
Указывает значение ошибки, интересующее вас. Это значения, возвращаемые одной из функций RAS: перечисленные в файле заголовка RasError.h.
[out] lpszString
Указатель на буфер, получающий строку ошибки. Этот параметр не должен быть null.
[in] InBufSize
Указывает размер буфера, на который указывает lpszErrorString.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение ERROR_SUCCESS.
Если функция завершается ошибкой, возвращаемое значение является одним из следующих кодов ошибок или значения из кодов ошибок маршрутизации и удаленного доступа или Winerror.h. Сведения GetLastError
Ценность | Значение |
---|---|
|
Недопустимый параметр был передан в функцию. |
Замечания
Невозможно заранее определить точный размер в символах сообщения об ошибке и таким образом размер буфера, необходимый. Сообщения об ошибках обычно будут иметь 80 символов или меньше размера; Размер буфера 512 символов всегда будет достаточным. Буфер недостаточного размера приводит к сбою функции RasGetErrorString, возвращающей ERROR_INSUFFICIENT_BUFFER. Обратите внимание, что размер буфера указывается в символах, а не в байтах; Таким образом, версия Юникода RasGetErrorString требует по крайней мере буфера 1024 байтов, чтобы гарантировать соответствие каждого сообщения об ошибке.
Примеры
Следующий код получает строку ошибки для ошибки 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;
}
Заметка
Заголовок ras.h определяет RasGetErrorString как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
целевая платформа | Виндоус |
заголовка | ras.h |
библиотеки |
Rasapi32.lib |
DLL | Rasapi32.dll |
См. также
Обзор службы удаленного доступа (RAS)