谁用过waveinopen函数?帮忙调试一下!
unit caiji;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls,MMSystem;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
type
trecorder=class
private
Fwavefmt:Twaveformatex;
wavehandle:hwavein;
wavehdrl:pwavehdr;
wavebuffer1:lpstr;
// procedure callback(umsg,dwinstance,dwparam1,dwparam2:dword);stdcall;
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var recorder:trecorder;
begin
recorder:=trecorder.Create;
recorder.Fwavefmt.wFormatTag:=wave_format_pcm;
recorder.Fwavefmt.wBitsPerSample:=16; //量化位数
recorder.Fwavefmt.nSamplesPerSec:=11025; //采样速率
recorder.Fwavefmt.nAvgBytesPerSec:=22050; //每秒采样得到的数据
recorder.Fwavefmt.nBlockAlign:=2; //记录区块对齐的单位。
waveinopen(@recorder.wavehandle,wave_mapper,mailto:@recorder.Fwavefmt,dword(@trecorder.callback),dword(@recorder),callback_function+wave_allowsync);
end;
end.
错误提示:
[Error] caiji.pas(43): Undeclared identifier: 'mailto'
[Error] caiji.pas(43): Incompatible types: 'Cardinal' and 'Pointer'