Здравствуйте Vladik, Вы писали:
V>Привет! Извиняюсь за повтор (сначала в WIN API написал, но может здесь кто поможет).
V>Иногда сабжевая функция возвращает ошибку 5 (типа "блок еще используется"). Хотя делаю я это в обработчике WIM_DATA, т.е. очередной блок явно отдан мне "на растерзание" и не используется. Из-за чего такое может быть?
V>И еще вопрос — как правильно завершать запись? Перед waveInReset явно устанавливать некий флажок, чтобы в обработчике WIM_DATA не делать очередной waveInAddBuffer? А то иначе у меня обламывается waveInClose (типа очередь буферов непуста и закрыть девайс нельзя).
Ответить на Ваш вопрос без кода трудно. Приведите код, попробуем разобраться. Я делал компоненты для работы со звуком, если оставите свой эл-ый адрес, я Вам их вышлю. Кстати, я завершал запис так как Вы говорили, перед WaveInReset ставил флаг, который опрашивался в обработчике WIM_DATA