iT邦幫忙

DAY 2
5

Windows Mobile系列 第 2

[Windows Mobile]寫程式播放音樂檔

介紹如何寫程式來播放音樂檔於Windows Mobile使用
更多文章,請到我在點部落所建立的部落格「.NET菜鳥自救會」閱讀
http://www.dotblogs.com.tw/chou/

  1. 播放 wav 音效檔
    透過 Windows API 中,Coredll.dll 內的 PlaySound 可以播放一些音效檔。
    宣告方式

        [DllImport("CoreDll.DLL", EntryPoint="PlaySound", SetLastError=true)]
        private extern static int PlaySound(string szSound, IntPtr hMod, int flags);
    

將以下播放音效的程式碼,整合到上一篇文章 音量控制 中,可以撥音效與調整音量大小。
程式碼

        [DllImport("CoreDll.DLL", EntryPoint="PlaySound", SetLastError=true)]
        private extern static int PlaySound(string szSound, IntPtr hMod, int flags);

        public const int SND_FILENAME = 0x00020000; // file name
        public const int SND_SYNC = 0x0000;  // play synchronously (default)

        private void button1_Click(object sender, EventArgs e)
        {
            PlaySound("\\windows\\Alarm2.wav", IntPtr.Zero, 0);
        }

執行結果

  1. 播放音樂檔
    想要在 Windows Mobile 播放 mp3 的話,可以使用 Windows Media Player Lib (WMPLib),以下簡單介紹如何使用

先將 WMPLib 加入參考,檔名為 C:\WINDOWS\system32\wmp.dll

以下程式碼功能為將 \Storage Card\Music 的檔案顯示於 ListBox 中,使用者可撥放與停止播放 mp3 音樂檔。
程式碼

        WMPLib.WindowsMediaPlayer Player;

        private void Form4_Load(object sender, EventArgs e)
        {
            foreach (string s in System.IO.Directory.GetFiles(@"\Storage Card\Music") )
            {
                this.listBox1.Items.Add(s);
            }
            Player = new WMPLib.WindowsMediaPlayer(); 
            Player.settings.volume = 10;
        }

        private void btnStart_Click(object sender, EventArgs e)
        {
            // Play music file
            if (this.listBox1.SelectedIndex >= 0)
            {
                Player.URL = this.listBox1.SelectedItem.ToString();
                Player.controls.play();
            }
        }

        private void btnStop_Click(object sender, EventArgs e)
        {
            // Stop music file
            Player.controls.stop();
        }

執行結果


上一篇
[Windows Mobile]撰寫音量控制的程式
下一篇
[Windows Mobile]使用 Yahoo!奇摩生活+ API 撰寫程式來查詢商家資訊
系列文
Windows Mobile41

尚未有邦友留言

立即登入留言