GetLastError()
может быть как-то передан FormatMessageW
, чтобы получить отформатированное сообщение. Цель состоит в том, чтобы в конце получить QString
. Каков правильный и безопасный способ сделать это?Как получить текстовое представление GetLastError как QString?
0
A
ответ
8
Это делает трюк.
QString getLastErrorMsg() {
LPWSTR bufPtr = NULL;
DWORD err = GetLastError();
FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM |
FORMAT_MESSAGE_IGNORE_INSERTS,
NULL, err, 0, (LPWSTR)&bufPtr, 0, NULL);
const QString result =
(bufPtr) ? QString::fromUtf16((const ushort*)bufPtr).trimmed() :
QString("Unknown Error %1").arg(err);
LocalFree(bufPtr);
return result;
}
Всегда следует указать FORMAT_MESSAGE_IGNORE_INSERTS при вызове FormatMessage. Некоторые сообщения об ошибках содержат заполнители, что приведет к ошибкам, если ваш код не перейдет в список аргументов. Поскольку мы передаем NULL, это будет ошибкой, ожидающей появления.
Смежные вопросы
- 1. Как получить текстовое представление из XDocument?
- 2. Как получить данные в текстовое представление?
- 3. Получить текстовое представление поля записи?
- 4. текстовое представление
- 5. Как получить сообщение об ошибке из кода ошибки, возвращаемого GetLastError()?
- 6. Как перевести ® в текстовое представление Silverlight
- 7. Как использовать getLastError в pymongo?
- 8. Как нарисовать QString
- 9. Как получить статическую строку инициализировать текстовое представление при запуске активности?
- 10. Как получить индекс и текстовое представление выбранного элемента в списке?
- 11. Как изменить текстовое представление из другого процесса?
- 12. Application_Error - GetLastError() или GetLastError(). GetBaseException()
- 13. Получить текстовое представление с несколькими текстовыми андроидами
- 14. Текстовое представление содержимого TableView
- 15. Как отрезать текстовое представление после 20 символов?
- 16. Как создать текстовое представление программы в RecyclerView.ViewHolder
- 17. Как обновить текстовое представление с несколькими datepickers
- 18. Как написать экспонента в текстовое представление?
- 19. Как мы можем создать динамическое текстовое представление?
- 20. Как просмотреть текстовое представление элемента lxml?
- 21. Как настроить текстовое представление в базовом адаптере?
- 22. Как проверить текстовое представление в android?
- 23. Мне нужно создать текстовое представление, как этот
- 24. Как установить текстовое представление, если условие выполнено?
- 25. текстовое представление оси y
- 26. Как предотвратить переписывание JNI GetLastError()
- 27. JSQMessages только текстовое представление
- 28. Как получить второе значение в QMap <QString, QMap <QString, QString>>
- 29. Как вы преобразовываете QString в указатель QString?
- 30. Как разделить QString