Разница между двумя возвращаемыми значениями IAudioClient::InitializeC++

Программы на C++. Форум разработчиков
Anonymous
Разница между двумя возвращаемыми значениями IAudioClient::Initialize

Сообщение Anonymous »

У меня возникли проблемы с пониманием документации по функции инициализации IAudioClient.
https://learn.microsoft.com/en-us/windo ... initialize
Речь идет о разнице возвращаемых значений;

Код: Выделить всё

E_INVALIDARG
и

Код: Выделить всё

AUDCLNT_E_UNSUPPORTED_FORMAT
В описании E_INVALIDARG указано: «Параметр pFormat указывает на недопустимое описание формата».
Однако в описании AUDCLNT_E_UNSUPPORTED_FORMAT «Аудиосистема (общий режим) или конечное устройство аудио (монопольный режим) не поддерживает указанный формат».
Что означает в E_INVALIDARG, что формат описания «недействителен»? Я думаю, дело не в том, что оно не подходит к устройству, поскольку оно уже обработано AUDCLNT_E_UNSUPPORTED_FORMAT?
И дело также не в том, что это pFormat == NULL, поскольку оно уже обрабатывается E_POINTER
Итак, какие конкретные случаи охватывают эту некорректность pFormat при возврате == E_INVALIDARG?

Подробнее здесь: https://stackoverflow.com/questions/786 ... urn-values

Вернуться в «C++»