久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: c#播放MP3源程序 [打印本頁]

作者: 西歐阿虎    時間: 2019-3-4 09:55
標題: c#播放MP3源程序
c# 調用winmm.dll 播放mp3
  1. using System;
  2. using System.IO;
  3. using System.Runtime.InteropServices;
  4. using System.Threading;
  5. using System.Windows.Forms;

  6. namespace DMS
  7. {
  8.     // Token: 0x02000016 RID: 22
  9.     public static class MP3Player
  10.     {
  11.         // Token: 0x060000F8 RID: 248 RVA: 0x00027F08 File Offset: 0x00026108
  12.         private static void PlayWait(string file)
  13.         {
  14.             bool flag = !File.Exists(file);
  15.             if (!flag)
  16.             {
  17.                 MP3Player.mciSendString(string.Format("open \"{0}\" type mpegvideo alias media", file), null, 0, 0);
  18.                 MP3Player.mciSendString("play media wait", null, 0, 0);
  19.                 MP3Player.mciSendString("close media", null, 0, 0);
  20.             }
  21.         }

  22.         // Token: 0x060000F9 RID: 249 RVA: 0x00027F58 File Offset: 0x00026158
  23.         private static void PlayRepeat(string file)
  24.         {
  25.             bool flag = !File.Exists(file);
  26.             if (!flag)
  27.             {
  28.                 MP3Player.mciSendString(string.Format("open \"{0}\" type mpegvideo alias media", file), null, 0, 0);
  29.                 MP3Player.mciSendString("play media repeat", null, 0, 0);
  30.             }
  31.         }

  32.         // Token: 0x060000FA RID: 250 RVA: 0x00027F98 File Offset: 0x00026198
  33.         public static void Play(string file, int times)
  34.         {
  35.             bool flag = file.Trim() == "";
  36.             if (!flag)
  37.             {
  38.                 bool flag2 = file.Contains("..\\");
  39.                 if (flag2)
  40.                 {
  41.                     file = Application.StartupPath + file.Substring("..".Length);
  42.                 }
  43.                 DataManageInfo.IsPlaying = 0;
  44.                 bool flag3 = !File.Exists(file);
  45.                 if (!flag3)
  46.                 {
  47.                     DataManageInfo.IsPlaying = 1;
  48.                     MP3Player.thread = new Thread(delegate ()
  49.                     {
  50.                         bool flag4 = times == 0;
  51.                         if (flag4)
  52.                         {
  53.                             MP3Player.PlayRepeat(file);
  54.                         }
  55.                         else
  56.                         {
  57.                             bool flag5 = times > 0;
  58.                             if (flag5)
  59.                             {
  60.                                 int num;
  61.                                 for (int i = 0; i < times; i = num + 1)
  62.                                 {
  63.                                     MP3Player.PlayWait(file);
  64.                                     num = i;
  65.                                 }
  66.                             }
  67.                         }
  68.                         while (DataManageInfo.IsPlaying == 1)
  69.                         {
  70.                             Thread.Sleep(100);
  71.                         }
  72.                         MP3Player.mciSendString("stop media", null, 0, 0);
  73.                         MP3Player.mciSendString("close media", null, 0, 0);
  74.                         DataManageInfo.IsPlaying = 0;
  75.                     });
  76.                     MP3Player.thread.SetApartmentState(ApartmentState.STA);
  77.                     MP3Player.thread.IsBackground = true;
  78.                     MP3Player.thread.Start();
  79.                 }
  80.             }
  81.         }

  82.         // Token: 0x060000FB RID: 251 RVA: 0x0002806C File Offset: 0x0002626C
  83.         public static void Stop()
  84.         {
  85.             bool flag = MP3Player.thread != null;
  86.             if (flag)
  87.             {
  88.                 try
  89.                 {
  90.                     DataManageInfo.IsPlaying = 2;
  91.                     while (DataManageInfo.IsPlaying == 2)
  92.                     {
  93.                         Thread.Sleep(100);
  94.                     }
  95.                     MP3Player.thread.Abort();
  96.                 }
  97.                 catch
  98.                 {
  99.                 }
  100.                 MP3Player.thread = null;
  101.             }
  102.         }

  103.         // Token: 0x060000FC RID: 252
  104.         [DllImport("winmm.dll", CharSet = CharSet.Auto)]
  105.         private static extern int mciSendString(string lpstrCommand, string lpstrReturnString, int uReturnLength, int hwndCallback);


  106.         // Token: 0x04000227 RID: 551
  107.         private static Thread thread;
  108.     }
  109. }
復制代碼


MP3Player.rar

1.04 KB, 下載次數: 11, 下載積分: 黑幣 -5

c#播放MP3的類庫






歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美 日韩精品 | 欧美一a| 精品一区二区三 | 涩涩视频网站在线观看 | 91视视频在线观看入口直接观看 | 九九久久99 | 日韩av大片免费看 | 亚洲综合色| 日韩三区在线 | 九一视频在线观看 | 日韩三级视频 | 中文字幕一区在线观看视频 | 亚洲午夜av久久乱码 | 国产一区在线免费观看视频 | 亚洲一区二区久久 | 国产精品一区二区av | 亚洲美女天堂网 | 在线看av网址 | 婷婷成人在线 | 美女午夜影院 | 在线亚洲人成电影网站色www | 久久一本 | 91美女视频| 99福利在线观看 | 成人免费视频 | 欧美综合一区 | 红桃视频一区二区三区免费 | 欧美三级三级三级爽爽爽 | 韩国久久 | 91色在线| 国产激情精品视频 | 久久国产精品久久久久 | 天天干.com | 国产一区二区三区久久久久久久久 | 免费亚洲一区二区 | 伊人天堂网 | 免费成人高清在线视频 | 美女视频一区二区三区 | 中文字幕精品一区久久久久 | 国产精品免费播放 | 日韩亚洲欧美综合 |