想请教一下如何不用控件直接用API函数录制wav文件??能给帖出个例子么??谢谢!

解决方案 »

  1.   

    直接用API可以录制wav文件.
    不过你先要学习PCM编码的一些知识,再看看下面这些消息    procedure mmwimopen(var Msg: TMessage); message MM_WIM_OPEN;
        procedure mmwimdata(var Msg: TMessage); message MM_WIM_DATA;
        procedure mmwimclose(Var Msg:TMessage);message MM_WIM_CLOSE;
        procedure mmwomopen(Var Msg:TMessage);message MM_WOM_OPEN;
        procedure mmwomdone(Var Msg:TMessage);message MM_WOM_DONE;
        procedure mmwomclose(Var Msg:TMessage);message MM_WOM_CLOSE;这都是作语音必须要处理的几个消息,你可以看看帮助.
    最好可以看看<Windows程序设计>,其中有详细的说明
      

  2.   

    windows程序设计?能具体推荐一本书么?
      

  3.   

    <Windows程序设计>就是书名,看下册
      

  4.   

    我想要:[email protected]  [email protected]  谢谢了。
      

  5.   

    unit Unit1;interfaceuses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs,mmsystem, StdCtrls;type
    TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button4: TButton;
    SaveDialog1: TSaveDialog;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    private
    { Private declarations }
    public
    { Public declarations }
    end;var
    Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    begin
      mciSendString('close p1',0,0,0);
      mciSendStringA('open new type WAVEAudio alias p1',0,0,0);
      mciSendString('record p1',0,0,0);
    end;procedure TForm1.Button2Click(Sender: TObject);
    begin
      mciSendString('stop p1',0,0,0);
    end;procedure TForm1.Button3Click(Sender: TObject);
    begin
      mciSendString('play p1',0,0,0);
    end;procedure TForm1.Button4Click(Sender: TObject);
    var s:string;
    begin
      if SaveDialog1.Execute then
        s:='save p1 '+SaveDialog1.filename;
      mciSendString(pchar(s),0,0,0);
    end;end.
      

  6.   

    to:kingisw(wjq)
    ,能发给我么?