⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 打开指定光驱.txt

📁 大量Delphi开发资料
💻 TXT
字号:
我想打开我指定的光驱!
而不是系统默认的第一个光驱!比方 我有两个光驱我要打开第二个!

请那位高手指点!!!  谢谢!  


来自:江西的delphi, 时间:2003-11-1 13:41:00, ID:2266819
function EjectCD(Drive : char) : bool;
var
 mp : TMediaPlayer;
begin
 result := false;
 Application.ProcessMessages;
 //if not IsDriveCD(Drive) then exit;
 mp := TMediaPlayer.Create(nil);
 mp.Visible := false;
 mp.Parent := Application.MainForm;
 mp.Shareable := true;
 mp.DeviceType := dtCDAudio;
 mp.FileName := Drive + ':';
 mp.Open;
 Application.ProcessMessages;
 mp.Eject;
 Application.ProcessMessages;
 mp.Close;
 Application.ProcessMessages;
 mp.free;
 result := true;
end;
注意:use  mplayer  


来自:江西的delphi, 时间:2003-11-1 13:42:00, ID:2266821
uses mmSystem;
procedure CDRomOpen(bOpenDrive:boolean; cDrive:char);  //uses mmSystem
var open:MCI_OPEN_PARMS;
   status:MCI_STATUS_PARMS;
   flags:dword;
   szDriveName:array[0..3]of char;
begin
   strcopy(szDriveName,'?:');
   ZeroMemory(@open,sizeof(MCI_OPEN_PARMS));
   open.lpstrDeviceType:=LPCSTR(MCI_DEVTYPE_CD_AUDIO);
   szDriveName[0]:=cDrive;
   open.lpstrElementName:=szDriveName;
   flags:=MCI_OPEN_TYPE or MCI_OPEN_TYPE_ID or MCI_OPEN_ELEMENT or MCI_OPEN_SHAREABLE;
   if mciSendCommand(0,MCI_OPEN,flags,LongWord(@open))=0 then
     begin
       status.dwItem:=MCI_STATUS_READY;
       if (bOpenDrive) then 
           mciSendCommand(open.wDeviceID,MCI_SET,MCI_SET_DOOR_OPEN,0)
       else 
           mciSendCommand(open.wDeviceID,MCI_SET,MCI_SET_DOOR_CLOSED,0);
       mciSendCommand(open.wDeviceID,MCI_CLOSE,MCI_WAIT,0);
     end;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
 CDRomOpen(true,'I');  // open cd
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
begin
 CDRomOpen(false,'I'); //  Close cd
end;  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -