Я хотел написать функцию, которая будет воспринимать ошибку_кода в качестве аргумента и получить сообщение об ошибке и вернуть сообщение. Но для FormatMessage, выделенная память, очищается с помощью LocalFree (ERR_MSG). Не уверен, как это может быть наряду с возвращением. < /P>
static char* return_message(int error_code) {
LPTSTR err_msg;
FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM |
FORMAT_MESSAGE_IGNORE_INSERTS | FORMAT_MESSAGE_MAX_WIDTH_MASK,
0, error_code, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
(LPTSTR)&err_msg, 0, 0);
return err_msg;
< /code>
Я хочу иметь метод, аналогичный вышеуказанному. В то время как в вышеупомянутом случае, если мы вернем err_msg, это выходит из области. Кто -нибудь может дать правильную функцию для этого?
Подробнее здесь: https://stackoverflow.com/questions/662 ... formatmess