![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
работа с mmSystem [D5]
Satrap © (2001-12-07 14:56:00)Уважаемые мастера, помогите, очень нужно. Мне необходимо ипспользовать функцию WaveInOpen с флагом CALLBACK_FUNCTION. При этом, необходимо указать адрес CALLBACK-функции. Как это сделать, ума не приложу. Попробовал пользоваться оператором @@, но он возвращает pointer, а нужен Cardinal. Помогоите, то есь Help.
Satrap (2001-12-17 14:49:00) [1]Так и есть, спасибо.
troits (2001-12-13 11:00:00) [2]Попробуй
procedure YourWaveInProc(hwi: HWAVEIN; uMsg: UINT; dwInstance, dwParam1, dwParam2:DWORD); stdcall; - забыл указать stdcall
Наверняка дело в этом.
Я просто не работал никогда с этим API. Не проверил...
Satrap (2001-12-13 10:13:00) [3]большое спасибо за помошь, только вот входя в эту процедуру, я получаю ошибку, появляется окно с содержимым ячеек процессора. Я пытался написать
WaveInProc как метод своей формы и просто как паскалевскую процедуру, результат один. Может знаешь в чем дело.
troits (2001-12-07 20:20:00) [4]procedure YourWaveInProc(hwi: HWAVEIN; uMsg: UINT; dwInstance, dwParam1, dwParam2:DWORD);
begin
// Твоя ф - ция
end;
Вызов:
waveInOpen(
lphWaveIn,
uDeviceID,
lpFormatEx,
DWORD(@YourWaveInProc), !!!!!!!
dwInstance,
dwFlags);