用ACM控件做的一个语音软件,但每次通讯前都要 弹出一个声音选择对话框,怎么样跳过这个,我用的是GSM610
procedure TForm2.btn1Click(Sender: TObject);
var format:pointer;begin
      format:=ACMDialog1.OpenDialog;
     if format=nil then exit;
    idc.Active:=true;
    ACMWaveOut1.Open(format);
    ACMWaveIn1.Open(format);
end;

解决方案 »

  1.   

    http://topic.csdn.net/u/20081027/16/ea44012c-19f4-4fe5-882b-32660d04d9e2.html
    我记得以前回复过你这个问题吧!!这么久了还没解决?
      

  2.   

    这个软件甩一边很久没弄了
    按你回复的方法 运行还是有错误
    access vilotion at address 004029fd in mmodule
    应该是下面这块程序有问题,但我实在不懂这个
    with gsm610 do 
      begin 
        wFormatTag:=$31; 
        nChannels:=1; 
        wBitsPerSample:=0; 
        nSamplesPerSec:=8000; 
        nBlockAlign:=65; 
        nAvgBytesPerSec:=1625; 
        cbSize:=2; 
        wSamplesPerBlock:=$140; 
      end; 
      format:=@gsm610; 
      ACMWaveOut1.Open(format); //这个就可以跳过声音选定对话框 
      ACMWaveIn1.Open(format); 
      

  3.   

    procedure TForm1.StartClick(Sender: TObject);
    begin
      SoundCap.StartCap;
      SoundCap.OpenCapture(Form1.Handle);
      with gsm610 do
      begin
        wFormatTag:=$31;
        nChannels:=1;
        wBitsPerSample:=0;
        nSamplesPerSec:=8000;
        nBlockAlign:=65;
        nAvgBytesPerSec:=1625;
        cbSize:=2;
        wSamplesPerBlock:=$140;
      end;
      format:=@gsm610;
      ACMWaveOut1.Open(format);
      ACMWaveIn1.Open(format);
    不知道你那是怎么回事,我这代码一直用得很好!