DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: snarv12
今日帖子: 0
在线用户: 13
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 firefox_1983 (firefox) ★☆☆☆☆ -
盒子活跃会员
2004/3/27 3:19:44
标题:
SOS!! 浏览:1439
加入我的收藏
楼主: 近期,我在做一个简单的播放器时,遇到了一个问题,关于光驱的控制问题。
我在uses部分添加了mmsystem单元后,调用了mcisendstring函数后,光驱却什么任何反映,不知道为什么?请个位指点一下。
----------------------------------------------
-
作者:
男 iamdream (银河恒久远,梦想无止境!) ★☆☆☆☆ -
大贡献会员
2004/3/27 8:32:04
1楼: 这里有两个函数,你可以参看一下(写得不太好,其实可合为一个):
function OpenCd(handle: HWND; drive: String): Boolean;
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;

function CloseCd(handle: HWND; drive: String): Boolean;
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_CLOSED, 0);
    IF Res=0 Then exit;
    Result:=True;
  finally
    mciSendCommand(DeviceID, mci_Close, Flags, Longint(@OpenParm));
  end;
end;

----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
作者:
男 waterstone (waterstone) ★☆☆☆☆ -
盒子活跃会员
2004/3/27 11:35:24
2楼: 行!

----------------------------------------------
我来自农村广阔的田野我的每一个动作都很夸张http://waterstone.51r.com
作者:
男 waterstone (waterstone) ★☆☆☆☆ -
盒子活跃会员
2004/3/27 11:40:25
3楼: 看看这个
此帖子包含附件:
JPEG 图像
大小:8.5K
----------------------------------------------
我来自农村广阔的田野我的每一个动作都很夸张http://waterstone.51r.com
作者:
男 waterstone (waterstone) ★☆☆☆☆ -
盒子活跃会员
2004/3/27 11:58:10
4楼: 代码很简单,只有两行:

 mciSendString(''Set cdaudio door open wait'', nil, 0, handle);

 mciSendString(''Set cdaudio door closed wait'', nil, 0, handle);


----------------------------------------------
我来自农村广阔的田野我的每一个动作都很夸张http://waterstone.51r.com
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行70.3125毫秒 RSS