网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C/C++
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.水滴石穿C语言之typedef的问题.
.控制台窗口界面的编程控制(四).
.C语言入门之文件(1).
.C语言初学者的十八颗“地雷”.
.C语言中库函数调用几例.
.我的程序人生路.
.用BCB3.0制作桌面动画.
.程序员眼中的qmail(qmail源代码分.
.文本模式下的GUI设计,使用tc2.0.
.使用C++和XML建立智能文档(三).
.大家进来瞧瞧我编的小迷宫,望大.
.UNIX 萤幕导向程式的发展利器.
.自己写的一个链表综合程序.
.vb.net实现一个自定义类数组的排.
.读取注册表中一个子键下的所有子.
.不调用拨号网络在程序中拨号.
.改变公共对话框的内容.
.留言簿程序的编写.
.浅谈C/C++内存泄漏及其检测工具.
.C++数据结构学习:用栈做表达式求.

编程实现自动弹出和关闭CD托盘

发表日期:2008-3-8



  你肯定问过这个问题:我如何编程实现自动弹出和关闭CD托盘,而不必我用手按开关?好,本文就想谈一谈这个问题。

  你们一定对Delphi的TMediaPlayer组件比较熟悉,它是一个相当出色的多用途的多媒体组件,但是美中不足的是:假如CDROM光驱的仓门打开就不能自动关闭。而且不幸的是,TMediaPlayer的方法和属性中没有解决这个问题的办法,所以我们不得不求助于Windows API,具体一些就是使用MMSystem.pas文件,另外一件需要注重的事是:我们可以单独调用Windows API函数,但是TMediaPlayer做了一些内部处理,所以我们就不必担心我们是否使用了组件。所以本例中使用了TMediaPlayer。

  第一步 新建一个工程,然后把一个TMediaPlayer 和 TButton拖到它上面。

  第二步 在窗体的uses语句中添加一个MMSystem声明。

  第三步 设置TMediaPlayer的AutoOpen属性为真,设置DeviceType属性为dtCDAudio,除此之外我们还可以关闭EnabledButtons属性的BTEject选项,因为我们将使用代码来完成这个功能。

  第四步 在某些应用程序中,我还要使用到数据CD,所以我也要设置Visible属性为假,让我的按钮做开关仓门的动作。

  第五步 就是在按钮的Onclick 事件中添加下面的代码:

procedure TForm1.Button2Click(Sender: TObject);
begin
with MediaPlayer1 do
if (MediaPlayer1.Mode = mpOpen) then
mciSendCommand(MediaPlayer1.DeviceID, MCI_SET, MCI_SET_DOOR_CLOSED, 0)
else
mciSendCommand(MediaPlayer1.DeviceID, MCI_SET, MCI_SET_DOOR_OPEN, 0);
end;

  注重,我们使用了mciSendCommand函数,在Windows中,每个东西都是被消息控制,在设备控制方面,mciSnedCommand与windows的WndProc非常相似,都象是一个消息分发器,提供给设备了消息类型、消息标志、消息参数以及你所使用的方法。假如您想了解更具体的信息的话,请您参阅帮助文件。 更多文章 更多内容请看Java编程开发手册专题,或
上一篇:用C++在WIN.INI中保存信息 人气:436
下一篇:C语言程序设计经典实例之十 人气:471
浏览全部C/C++的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐