unit1.pas

来自「delphi 控制光驱的探出与关闭 源代码」· PAS 代码 · 共 36 行

PAS
36
字号
unit Unit1;

interface

implementation
function OpenCDROM(Drive: pChar): Boolean;stdcall; // 打开CDROM
var
  Res: MciError;
  OpenParm: TMCI_OPEN_Parms;
  Flags: Dword;
  s: string;
  DeviceID: Word;
begin
  Result := false;
  s := Drive + ':';
  flags := mci_Open_Type or mci_Open_Element;
  with OpenParm do
  begin
    dwCallBack := 0;
    lpstrDeviceType := 'CDAudio';
    lpstrElementName := PChar(s);
  end;
  Res := mciSendCommand(0, mci_Open, Flags, Longint(@OpenParm));
  if Res <> 0 then exit;
  DeviceID := OpenParm.wDeviceID;
  try
    Res := mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_OPEN, 0);
    if Res = 0 then exit;
    Result := True;
  finally
    mciSendCommand(DeviceID, mci_Close, Flags, Longint(@OpenParm));
  end;
end;

end.
 

⌨️ 快捷键说明

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