| ysv_ 
								Помогающий    Offline | 
								|  | « :  01-01-2004 17:40 »   |  | 
 
 Столкнулся со следующим глюком(?) Винды: под Win9x я могу открыть waveaudio в основной нити, а записывать в другой, созданной специально для записи аудио. А вот в Win2K я получаю ошибку типа: "не возможно выполнить команду для автооткрывающегося устройства. Подождите, пока оно будет закрыто и попытайтесь снова". Перевод приблизительный. Если кто сталктвался с чем нибудь подобным - подскажите можно ли обойти? И если можно, то как?В одной нити все работатет.
 
 Фрагменты из файлов:
 ===============================================
 inline void mciSendCommandThrow(MCIDEVICEID IDDevice, UINT uMsg, DWORD fdwCommand,
 DWORD_PTR dwParam)
 {
 MCIERROR err=mciSendCommand(IDDevice, uMsg, fdwCommand, dwParam);
 if (err!=0) throw RecordDeviceError(err);
 }
 
 MCI_OPEN_PARMS params={0, 0, "waveaudio", "", 0};
 mciSendCommandThrow(0, MCI_OPEN, MCI_OPEN_TYPE | MCI_OPEN_ELEMENT | MCI_WAIT,
 DWORD(¶ms));
 deviceId_=params.wDeviceID;
 
 MCI_RECORD_PARMS params={0, 0, 0};
 mciSendCommandThrow(deviceId_, MCI_RECORD, MCI_FROM | MCI_RECORD_OVERWRITE,
 DWORD(¶ms));
 |