Witam. Chciałbym przerobić ten program http://www65.zippyshare.com/v/77539825/file.html na budzik mp3. Ten program odtwarza plik wav. Ale co zrobić żeby odtwarzał mp3? Myślałem że wystarczy tylko wrzucić do katalogu z programem plik mp3 a plik wav wywalić i w kodzie zmienić nazwę pliku na .mp3 - ale jednak nie. Program ruszył, nastawiłem budzik ale gdy już miał pojawić się alarm to wtedy wywaliło mi błąd. Wiecie jak to ogarnąć?
Kod (to ten stary kod jeszcze z plikiem wav):
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Media;
using System.Windows.Forms;
namespace Budzik
{
public partial class frmBudzik : Form
{
private DateTime alarm = new DateTime();
private DateTime teraz;
private bool gra = false;
private bool ustawiony = false;
private SoundPlayer dzwonek = new System.Media.SoundPlayer("Whistle.wav");
private DateTime koniecalarmu;
private TimeSpan czastrwania = new TimeSpan(0, 1, 0);
public frmBudzik()
{
InitializeComponent();
licznik.Start();
}
private void licznik_Tick(object sender, EventArgs e)
{
teraz = DateTime.Now;
lblCzas.Text = teraz.ToString("T");
if (ustawiony &&
teraz.Hour == alarm.Hour &&
teraz.Minute == alarm.Minute &&
teraz.Second == alarm.Second && !gra)
{
gra = true;
mnuUstaw.Text = "Stop";
cmdUstaw.Text = "Stop";
koniecalarmu = DateTime.Now.Add(czastrwania);
dzwonek.PlayLooping();
}
if (gra)
{
if (koniecalarmu.Hour == teraz.Hour &&
koniecalarmu.Minute == teraz.Minute &&
koniecalarmu.Second == teraz.Second)
{
mnuUstaw.Text = "Ustaw";
cmdUstaw.Text = "Ustaw";
gra = false;
dzwonek.Stop();
}
}
}
private void cmdUstaw_Click(object sender, EventArgs e)
{
if (cmdUstaw.Text == "Ustaw")
{
cmdUstaw.Text = "OK";
lblAlarm.Visible = false;
txtAlarm.Visible = true;
txtAlarm.Focus();
}
else if (cmdUstaw.Text == "OK")
{
DateTime tmp = new DateTime();
try
{
tmp = DateTime.Parse(txtAlarm.Text);
}
catch
{
lblAlarm.Text = "nie ustawiono";
ustawiony = false;
txtAlarm.Visible = false;
lblAlarm.Visible = true;
cmdUstaw.Text = "Ustaw";
MessageBox.Show("Błąd", "Błąd", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
alarm = tmp;
lblAlarm.Text = alarm.ToString("T");
txtAlarm.Visible = false;
lblAlarm.Visible = true;
ustawiony = true;
cmdUstaw.Text = "Ustaw";
}
else if (cmdUstaw.Text == "Stop")
{
gra = false;
dzwonek.Stop();
cmdUstaw.Text = "Ustaw";
mnuUstaw.Text = "Ustaw";
}
}
private void frmBudzik_Resize(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
{
this.Hide();
IkonaTray.Visible = true;
}
}
private void mnuPokaz_Click(object sender, EventArgs e)
{
this.Show();
IkonaTray.Visible = false;
this.WindowState = FormWindowState.Normal;
}
private void mnuUstaw_Click(object sender, EventArgs e)
{
this.Show();
this.WindowState = FormWindowState.Normal;
IkonaTray.Visible = false;
cmdUstaw_Click(sender, e);
}
private void mnuWylacz_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void IkonaTray_MouseClick(object sender, MouseEventArgs e)
{
if (e.Button== MouseButtons.Left)
mnuPokaz_Click(sender, e);
}
private void IkonaTray_MouseMove(object sender, MouseEventArgs e)
{
IkonaTray.Text = "Czas: " + lblCzas.Text +
"\nAlarm: " + lblAlarm.Text;
}
}
}