C#播放音乐

	今天在调试机器的时候,要对一个双通道的信号发生器两路输出进行自动校准。每通道校准的时间大概是六七分钟,关键是回环中测试的GPIB卡和频谱仪只有一个,所以在换路测试时要手工转接信号发生器的输出口才能完成双路测试。
测试电脑在实验室,我坐在办公室,得不停跑去看有没校准好,感觉很烦躁。后来突然想到如果它校准好一路能自动播放音乐提示,这样我就可以听到音乐声后去手工转接线了。后来在网上搜了一下,参考了别人的blog,找到了以下两个办法:

1、MessageBeep 能让PC发出蜂鸣器的声音。

	[DllImport("user32.dll")]  
        public static extern int MessageBeep(uint uType);

	//发出不同类型的声音的参数如下:  
            uint beepI = 0x00000030;
           // uint Ok = 0x00000000;
            //Error = 0x00000010,  
            //Question = 0x00000020,  
            //Warning = 0x00000030,  
            //Information = 0x00000040  


            // 然后在程序中调用  
            //MessageBeep(beepI);       // 测试成功,能响
2、PlaySound 这个能播放wav格式音乐,效果不错,很实用

	[DllImport("winmm.dll")]
        public static extern bool PlaySound(String Filename, int Mod, int Flags);  

	// 程序中调用
	 PlaySound("D:\\My Documents\\FFOutput\\aiqingmaimai.wav",0,1);
PlaySound三个参数,其中第一个是音乐文件的路径,第二个没注意,第三个是播放属性设置,1表示ASYNC异步调用播放(不会阻塞当前进程)

关于使用,有以下几点注意的:
1、只能播放wav的,反正我试了mp3是不行的,没反应。
2、要想停止播放很简单,主要再次调用这个函数,第一个音乐路径参数用null就行了。
3、暂停播放不知道怎么实现,我也没取研究···

你可能感兴趣的:(String,C#,测试,Blog,null,音乐)