Определение номера устройства по идентификатору
Если вы открыли устройство ввода или вывода с указанием константы WAVE_MAPPER, функция waveInOpen (или waveOutOpen, если открывается устройство вывода) может использовать любое подходящее устройство, установленное в системе. Для определения номера выбранного устройства по идентификатору, полученному от функций waveInOpen или waveOutOpen, можно использовать, соответственно, функцию waveInGetID или waveOutGetID.
Приведем описание функции waveInGetID :
Функция waveInGetID
UINT waveInGetID( HWAVEIN hWaveIn, // идентификатор устройства ввода UINT FAR* lpwDeviceID); // адрес переменной для записи // номера устройства
Параметры функции:
hWaveIn
Идентификатор устройства ввода, полученный от функции waveInOpen при открытии устройства
lpwDeviceID
Указатель на слово в памяти, в которое будет записан номер устройства, соответствующий идентификатору hWaveIn
Возвращаемое значение:
При нормальном завершении возвращается нулевое значение. В противном случае возвращается код ошибки:
MMSYSERR_INVALHANDLE
Указан неправильный идентификатор устройства
Функция waveOutGetID используется аналогично:
Функция waveOutGetID
UINT waveOutGetID( HWAVEOUT hWaveOut, // идентификатор устройства вывода UINT FAR* lpwDeviceID); // адрес переменной для записи // номера устройства
Параметры функции:
hWaveOut
Идентификатор устройства вывода, полученный от функции waveOutOpen при открытии устройства
lpwDeviceID
Указатель на слово в памяти, в которое будет записан номер устройства, соответствующий идентификатору hWaveOut
Возвращаемое значение:
При нормальном завершении возвращается нулевое значение. В противном случае возвращается код ошибки:
MMSYSERR_INVALHANDLE
Указан неправильный идентификатор устройства