其实十分简单调用一个api函数就可以搞定了winmm.dll中的CDdoor

  1C#实现程序控制光驱门开/关using System;
  2C#实现程序控制光驱门开/关using System.Drawing;
  3C#实现程序控制光驱门开/关using System.Collections;
  4C#实现程序控制光驱门开/关using System.ComponentModel;
  5C#实现程序控制光驱门开/关using System.Windows.Forms;
  6C#实现程序控制光驱门开/关using System.Data;
  7C#实现程序控制光驱门开/关
  8C#实现程序控制光驱门开/关namespace CDDoor
  9{
 10
 11C#实现程序控制光驱门开/关    /// Form1 的摘要说明。
 12C#实现程序控制光驱门开/关    /// </summary>
 13C#实现程序控制光驱门开/关    public class Form1 : System.Windows.Forms.Form
 14{
 15C#实现程序控制光驱门开/关        private System.Windows.Forms.Button button1;
 16
 17C#实现程序控制光驱门开/关        /// 必需的设计器变量。
 18C#实现程序控制光驱门开/关        /// </summary>
 19C#实现程序控制光驱门开/关        private System.ComponentModel.Container components = null;
 20C#实现程序控制光驱门开/关
 21C#实现程序控制光驱门开/关        [System.Runtime.InteropServices.DllImport("winmm.dll", EntryPoint="mciSendStringA")] 
 22C#实现程序控制光驱门开/关        private static extern long CDdoor(string lpstrCommand, string lpstrReturnString, long uReturnLength, long hwndCallback);
 23C#实现程序控制光驱门开/关
 24C#实现程序控制光驱门开/关        private bool CDOpen = true;
 25C#实现程序控制光驱门开/关
 26C#实现程序控制光驱门开/关        public Form1()
 27{
 28C#实现程序控制光驱门开/关            InitializeComponent();
 29C#实现程序控制光驱门开/关
 30C#实现程序控制光驱门开/关            this.button1.Text = "点击关闭光驱"
 31C#实现程序控制光驱门开/关            CDdoor("set CDAudio door open""0"00); 
 32C#实现程序控制光驱门开/关        }
 33C#实现程序控制光驱门开/关
 34
 35C#实现程序控制光驱门开/关        /// 清理所有正在使用的资源。
 36C#实现程序控制光驱门开/关        /// </summary>
 37C#实现程序控制光驱门开/关        protected override void Dispose( bool disposing )
 38{
 39C#实现程序控制光驱门开/关            if( disposing )
 40{
 41C#实现程序控制光驱门开/关                if (components != null
 42{
 43C#实现程序控制光驱门开/关                    components.Dispose();
 44C#实现程序控制光驱门开/关                }
 45C#实现程序控制光驱门开/关            }
 46C#实现程序控制光驱门开/关            base.Dispose( disposing );
 47C#实现程序控制光驱门开/关        }
 48C#实现程序控制光驱门开/关
 49
 50
 51C#实现程序控制光驱门开/关        /// 设计器支持所需的方法 - 不要使用代码编辑器修改
 52C#实现程序控制光驱门开/关        /// 此方法的内容。
 53C#实现程序控制光驱门开/关        /// </summary>
 54C#实现程序控制光驱门开/关        private void InitializeComponent()
 55{
 56C#实现程序控制光驱门开/关            this.button1 = new System.Windows.Forms.Button();
 57C#实现程序控制光驱门开/关            this.SuspendLayout();
 58C#实现程序控制光驱门开/关            // 
 59C#实现程序控制光驱门开/关            // button1
 60C#实现程序控制光驱门开/关            // 
 61C#实现程序控制光驱门开/关            this.button1.Location = new System.Drawing.Point(104128);
 62C#实现程序控制光驱门开/关            this.button1.Name = "button1";
 63C#实现程序控制光驱门开/关            this.button1.TabIndex = 0;
 64C#实现程序控制光驱门开/关            this.button1.Click += new System.EventHandler(this.button1_Click);
 65C#实现程序控制光驱门开/关            // 
 66C#实现程序控制光驱门开/关            // Form1
 67C#实现程序控制光驱门开/关            // 
 68C#实现程序控制光驱门开/关            this.AutoScaleBaseSize = new System.Drawing.Size(614);
 69C#实现程序控制光驱门开/关            this.ClientSize = new System.Drawing.Size(292273);
 70C#实现程序控制光驱门开/关            this.Controls.Add(this.button1);
 71C#实现程序控制光驱门开/关            this.Name = "Form1";
 72C#实现程序控制光驱门开/关            this.Text = "Form1";
 73C#实现程序控制光驱门开/关            this.ResumeLayout(false);
 74C#实现程序控制光驱门开/关
 75C#实现程序控制光驱门开/关        }
 76C#实现程序控制光驱门开/关        #endregion
 77C#实现程序控制光驱门开/关
 78
 79C#实现程序控制光驱门开/关        /// 应用程序的主入口点。
 80C#实现程序控制光驱门开/关        /// </summary>
 81C#实现程序控制光驱门开/关        [STAThread]
 82C#实现程序控制光驱门开/关        static void Main() 
 83{
 84C#实现程序控制光驱门开/关            Application.Run(new Form1());
 85C#实现程序控制光驱门开/关        }
 86C#实现程序控制光驱门开/关
 87C#实现程序控制光驱门开/关        private void button1_Click(object sender, System.EventArgs e)
 88{
 89C#实现程序控制光驱门开/关            if (CDOpen == false
 90
 91C#实现程序控制光驱门开/关                CDdoor("set CDAudio door open""0"00); 
 92C#实现程序控制光驱门开/关                CDOpen = true
 93C#实现程序控制光驱门开/关                this.button1.Text = "点击关闭光驱"
 94C#实现程序控制光驱门开/关            } 
 95C#实现程序控制光驱门开/关            else 
 96
 97C#实现程序控制光驱门开/关                CDdoor("set CDAudio door closed""0"00); 
 98C#实现程序控制光驱门开/关                CDOpen = false
 99C#实现程序控制光驱门开/关                this.button1.Text = "点击打开光驱"
100C#实现程序控制光驱门开/关            }
101C#实现程序控制光驱门开/关        }
102C#实现程序控制光驱门开/关    }
103C#实现程序控制光驱门开/关}
104C#实现程序控制光驱门开/关

相关文章: