最新使用API函数mciSendString构成的媒体播放类

上传人:壹****1 文档编号:564441979 上传时间:2022-11-15 格式:DOC 页数:16 大小:28.50KB
返回 下载 相关 举报
最新使用API函数mciSendString构成的媒体播放类_第1页
第1页 / 共16页
最新使用API函数mciSendString构成的媒体播放类_第2页
第2页 / 共16页
最新使用API函数mciSendString构成的媒体播放类_第3页
第3页 / 共16页
最新使用API函数mciSendString构成的媒体播放类_第4页
第4页 / 共16页
最新使用API函数mciSendString构成的媒体播放类_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《最新使用API函数mciSendString构成的媒体播放类》由会员分享,可在线阅读,更多相关《最新使用API函数mciSendString构成的媒体播放类(16页珍藏版)》请在金锄头文库上搜索。

1、最新使用API函数mciSendString构成的媒体播放类使用API函数mciSendString构成的媒体播放类.txt我自横刀向天笑,笑完我就去睡觉。 你的 比话费还廉价。路漫漫其修远兮,不如我们打的吧。/* * C#没有提供播放MP3等音频文件的类, * 要编写播放MP3等音频文件程序, * 必须使用第三方控件或类。 * 本文使用API函数mciSendString, * 编写一个播放MP3等音频文件的类。 */using System;using System.Collections.Generic;using System.ComponentModel;using System.D

2、ata;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Runtime.InteropServices;namespace 使用API函数mciSendString构成的媒体播放类 public partial class Form1 : Form string path; public Form1() InitializeComponent(); clsMCI mci = null; private void button1_Click(objec

3、t sender, EventArgs e) mci = new clsMCI(); mci.FileName =path; this.progressBar1.Maximum = mci.Duration; mci.play(); this.timer1.Enabled = true; private void button2_Click(object sender, EventArgs e) if (mci = null) else this.timer1.Enabled = false; mci.StopT(); private void button3_Click(object sen

4、der, EventArgs e) OpenFileDialog op = new OpenFileDialog(); if (op.ShowDialog() = DialogResult.OK) path = op.FileName; private void Form1_Load(object sender, EventArgs e) private void timer1_Tick(object sender, EventArgs e) this.progressBar1.Value = mci.CurrentPosition; if (mci.CurrentPosition=mci.D

5、uration) this.timer1.Enabled = false; public class clsMCI public clsMCI() / / TODO: 在此处添加构造函数逻辑 / /定义API函数使用的字符串变量 MarshalAs(UnmanagedType.ByValTStr, SizeConst = 260) private string Name = ; MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128) private string durLength = ; MarshalAs(UnmanagedType.LPTS

6、tr, SizeConst = 128) private string TemStr = ; int ilong; /定义播放状态枚举变量 public enum State mPlaying = 1, mPuase = 2, mStop = 3 ; /结构变量 public struct structMCI public bool bMut; public int iDur; public int iPos; public int iVol; public int iBal; public string iName; public State state; ; public structMC

7、I mc = new structMCI(); / / 取得播放文件属性 / public string FileName get return mc.iName; set /ASCIIEncoding asc = new ASCIIEncoding(); try TemStr = ; TemStr = TemStr.PadLeft(127, Convert.ToChar( ); Name = Name.PadLeft(260, Convert.ToChar( ); mc.iName = value; ilong = APIClass.GetShortPathName(mc.iName, Na

8、me, Name.Length); Name = GetCurrPath(Name); /Name = open + Convert.ToChar(34) + Name + Convert.ToChar(34) + alias media; Name = open + Convert.ToChar(34) + Name + Convert.ToChar(34) + alias media; ilong = APIClass.mciSendString(close all, TemStr, TemStr.Length, 0); ilong = APIClass.mciSendString(Nam

9、e, TemStr, TemStr.Length, 0); ilong = APIClass.mciSendString(set media time format milliseconds, TemStr, TemStr.Length, 0); mc.state = State.mStop; catch MessageBox.Show(出错错误!); / / 播放 / public void play() TemStr = ; TemStr = TemStr.PadLeft(127, Convert.ToChar( ); APIClass.mciSendString(play media, TemStr, TemStr.Length, 0); mc.state = State.mPlaying; / / 停止 / public void StopT() TemStr = ; TemStr = TemStr.PadLeft(128, Convert.ToChar( ); ilong = APIClass.mciSendString(close media, TemStr, 128, 0); ilong = APIClass.mciSendString(close all, TemStr, 128, 0); mc.state = State.mStop

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号