Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

GetLastError


SPeller ©   (2002-04-05 13:43:00) 

Как получить текстовое представление ошибки, код которой возвращает данная функция ??


SPeller   (2002-04-05 14:48:00) [1]

Thanks All !!!


Юрий Федоров   (2002-04-05 14:28:00) [2]

А еще проще :
SysErrorMessage(GetLastError),
модуль SysUtils


VuDZ   (2002-04-05 14:25:00) [3]

LPVOID lpMsgBuf;
обявляешь просто _указатель_ на что угодно, можешь типа PChar

FormatMessage(
FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM |
FORMAT_MESSAGE_IGNORE_INSERTS,
NULL,

NULL == nil


GetLastError(),
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language

MAKELANGID определён как MAKELANGID(p, s) ((((WORD )(s))

MessageBox( NULL, (LPCTSTR)lpMsgBuf, "Error", MB_OK | MB_ICONINFORMATION );

Вывод сообщения ил ещё что-то

// Free the buffer.
LocalFree( lpMsgBuf );

Удаление буфера. Лучше через API.


SPeller   (2002-04-05 13:50:00) [4]

Уууу... извините, VuDZ, но в Си я 0, нельзя ли на Дельфи, если не трудно?
Да... спасибо за ответ.


VuDZ   (2002-04-05 13:46:00) [5]

MSDN:

LPVOID lpMsgBuf;
FormatMessage(
FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM |
FORMAT_MESSAGE_IGNORE_INSERTS,
NULL,
GetLastError(),
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
(LPTSTR) &lpMsgBuf,
0,
NULL
);
// Process any inserts in lpMsgBuf.
// ...
// Display the string.
MessageBox( NULL, (LPCTSTR)lpMsgBuf, "Error", MB_OK | MB_ICONINFORMATION );
// Free the buffer.
LocalFree( lpMsgBuf );


Наверх

Титульная страница Поиск, карта сайта Написать письмо