写一个按键弹出光驱的程序,用Delphi如何控制多光驱?用MciSendCommand具体参数如何?

解决方案 »

  1.   


    ...
    uses
    ...
    mmsystem;
    type
      tform1=class(tform)
        .....
    implementation
        {  $r*.dfm}
    procedure tform1.button1click(sender:tobject);
      begin
          mcisendstring('set cdaudio doos open wait',nil,0,handle);
      end;
                //打开光驱
    prcedure tform1.button2click(sender:tobject);
    begin
          mcisendstring('set cdaudio doos closed wait',nil,0,handle);
    end;   //关闭光驱
      

  2.   

    楼上所说的都废话, 楼主所问的是多光驱控制啊!!!!!!以下程序已通过,可以随意关闭任意光驱uses ...,mmSystem;function CloseOpenCDRom(c:String;bOpen:Boolean):string;
    const N=127;
    var
      err:array[0..N] of char;
      s:string ;
    begin
      s:='open '+c+': type CDAudio alias finch';
      mciSendString(pchar(s),err, N, 0);
      if bOpen then mciSendString('set finch door open',err,N, 0)
      else mciSendString('set finch door closed',err,N, 0);
      Result:=err;
    end;function OpenCDRom(c:string):string;
    begin
      result:=CloseOpenCDRom(c,true);
    end;function CloseCDRom(c:string):string;
    begin
      result:=CloseOpenCDRom(c,false);
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
      openCDROM('F');
    end;procedure TForm1.Button2Click(Sender: TObject);
    begin
      CloseCDROM('F');
    end;procedure TForm1.Button3Click(Sender: TObject);
    begin
      openCDROM('G');
    end;procedure TForm1.Button4Click(Sender: TObject);
    begin
      CloseCDROM('G');
    end;