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

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

Сообщение Anonymous »

У меня возникли проблемы с пониманием документации по функции IAudioClient::Initialize().
Речь идет о разных возвращаемых значениях E_INVALIDARG и AUDCLNT_E_UNSUPPORTED_FORMAT< /code>.
Описание 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++»