我的光驱弹出键坏了,
我想用软件驱使光驱弹入弹出。
最好是可以选择光驱(我有三个光驱)弹入弹出。
我记得在vc里可以实现。不知道在delphi里怎么写?

解决方案 »

  1.   

    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;
      

  2.   

    use mmsystem;//开
      mciSendString('Set CDAudio Door Open Wait', 0, 0, 0);
    //关
      mciSendString('Set CDAudio Door Closed Wait', 0, 0, 0);多光驱没做过,不过可以从设备号入手.