Функция 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. Функция RasGetErrorString не задает сведения о 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 или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | ras.h |
Библиотека | Rasapi32.lib |
DLL | Rasapi32.dll |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по