2010-12-10 3 views
3

J'ai déjà essayé, mais je suis intéressé par la lecture de son d'où commence mon programme. J'ai le fichier .wav dans le dossier du projet.Comment jouez-vous du son en C#?

SoundPlayer simpleSound = new SoundPlayer(@"/yay.wav"); 
    simpleSound.Play(); 

Merci

+3

Une clé à droite (ou une case vers le haut) de C –

+2

Je pense qu'il serait plus logique si vous avez @ « \ yay.wav » au lieu de @ «/yay.wav » :) – Marlon

Répondre

3

tel que j'ai le fichier .wav à l'intérieur du dossier du projet.

Ceci est probablement votre problème. Lorsque vous compilez votre application, elle ne se retrouve pas directement dans le dossier du projet. Elle se retrouve dans un sous-répertoire (/Debug/bin ou /Release/bin). Mettez le fichier wav là au lieu de dans le répertoire du projet et voir comment cela fonctionne.

+3

autre L'option serait d'inclure le fichier .wav en tant que ressource. – Marlon

1

Avant de jouer du son, vous devez être familier avec la fonction PlaySound() Win32 API.

private SoundPlayer player = new SoundPlayer(); 

/// Button click event handler. 
private void AsyncBtn_Click(object sender, EventArgs e) 
{ 
    if (openFileDialog1.ShowDialog() == DialogResult.OK) 
    { 
     // Set .wav file as TextBox.Text. 
     textBox1.Text = openFileDialog1.FileName; 

     // Add LoadCompleted event handler. 
     player.LoadCompleted += new AsyncCompletedEventHandler(LoadCompleted); 

     // Set location of the .wav file. 
     player.SoundLocation = openFileDialog1.FileName; 

     // Load asynchronously. 
     player.LoadAsync(); 
    } 
} 

/// LoadCompleted event handler. 
private void LoadCompleted(object sender, AsyncCompletedEventArgs args) 
{ 
    player.Play(); 
}