Проигрывание музыкальных файлов с участием библиотеки winmm.dll - C#
Формулировка задачи:
В процессе написания курсовой столкнулся с задачей воспроизведения музыкальных файлов, выбор пал на способ с подключением библиотеки winmm.dll.
Открытие файла происходит таким образом:
Всё бы было здорово, однако команда не воспроизводит файлы, в пути которых содержится пробел.
Как можно исправить это недоразумение, или же всё-таки лучше использовать другую библиотеку? (Например bass)
mciSendString(@"open " + fullFileName + " type mpegvideo alias mediaFile", null, 0, IntPtr.Zero);
Решение задачи: «Проигрывание музыкальных файлов с участием библиотеки winmm.dll»
textual
Листинг программы
using System;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace m_pl
{
public partial class Form1 : Form
{
[DllImport("winmm.dll")]
private static extern long mciSendString(string strCommand,
StringBuilder strReturn, int iReturnLength, IntPtr hwndCallback);
private String Pcommand;
public void Open(string sFileName)
{
Pcommand = "open \"" + sFileName + "\" type mpegvideo alias MediaFile";
mciSendString(Pcommand, null, 0, IntPtr.Zero);
}
public void Play()
{
Pcommand = "play MediaFile";
mciSendString(Pcommand, null, 0, IntPtr.Zero);
}
public Form1()
{
InitializeComponent();
Open("Михей и Джуманджи ft. Инна Steel - Туда.mp3");
Play();
}
}
}