C# ile System.Media AdUzayı Kullanımı

St.AnGeR

Document Visor..
Katılım
17 Haz 2005
Mesajlar
1,832
Reaction score
0
Puanları
0
Konum
ιѕт              HHuser№: 9          Remote Admi
C# ile System.Media AdUzayı Kullanımı



Merhabalar, bu yazımızda uygulamalarımızın içinde nasıl ses dosyalarını kullanacağımızı, kendi ses dosyalarımızı nasıl çaldırabileceğimizi göreceğiz.


.Net Framework 2.0 ile gelen yeni aduzaylarından biri de System.Media aduzayı.Bu aduzayı içerisinde 3 adet sınıf bulunmaktadır. Bunlar :


Sınıf
Açıklama

SoundPlayer
.wav dosyalarını çaldırmanızı sağlar

SystemSound
Sistem ses tiplerini simgeler.

SystemSounds
Windows işletim sisteminizin kullandığı ses dosyalarını yürütmenize olanak verir. Inherit edilemez.



System.Media sayesinde oldukça kolay bir şekilde işletim sisteminizin kullandığı uyarıcı ses dosyalarını veya kendi dosyalarınızı seslendirmeniz mümkün. Örneğin :


System.Media.SystemSounds.Hand.Play();


Uygulamalarınızda hata olduğunda kullanıcıların dikkatini çekmek için kullanabilirsiniz. Gördüğünüz gibi kullanımı oldukça rahat ve kolay.


İşletim sisteminizin kullandığı ses dosyalarını direk kullanmak oldukça kullanışlıdır peki ya siz kendi uyarıcı ses dosyalarınızı kullanmak isterseniz ne olacak ? Onun içinde tabii ki bir yol mevcut.


System.Media.SoundPlayer calgici = new System.Media.SoundPlayer();

calgici.SoundLocation = "C:\\deneme.wav";

//LoadAsync metodu wav dosyalarını okumamızı sağlar

calgici.LoadAsync();


LoadAsync metodu *.wav dosyalarımız asenkron olarak okumamıza olanak vermektedir. Bu metodun yerine Load metodu da kullanabilirsiniz. Aradaki fark Load metodu senkron olarak işlem yapmaktadır. Peki, hangisi avantajlı? Eğer okumaya çalıştığınız ses dosyası oldukça büyükse, URL üzerinden okuyorsanız veya uzak bir bilgisayardan okuyorsanız asenkron okumak yararınıza olacaktır. Asenkron okuma işleminde kodlarınız yürütülmeye devam eder fakat senkron kullanırsanız ses dosyası çalmadan, programı kullanan kullanıcı işlem yapamayacaktır. IsLoadComplete metodu ile de çalınan dosyanın çalma işleminin bitip bitmediğini öğrenebiliriz.


if (calgici.IsLoadCompleted)

{

MessageBox.Show("Çalma İşlemi Tamamlandı");

}



Eğer Vb.Net ile program yazıyorsanız :


My.Computer.Audio.Play("C:\Program Files\Messenger\newemail.Wav")


Yazarak da tek satır kod ile istediğiniz dosyayı çaldırmanız mümkün.
 
Geri
Üst