C# Uygulama Klasöründen Dosya Çalıştırma

Zevahir

Kilopat
Katılım
14 Temmuz 2016
Mesajlar
243
Çözümler
1
Daha fazla  
Cinsiyet
Erkek
Merhaba dostlar. Bir Windows Media Player var projemde ve bu projeye bir ses dosyası ekleyeceğim. Bu ses dosyasına her yerden ulaşmak için uygulama klasörünün içine attım. Biz bunu Application startup path dediğimiz bir komutla yapıyorduk. Fakat komutun kullanımını tam olarak hatırlayamıyorum. Yardımcı olabilir misiniz?
 
Son düzenleyen: Moderatör:
Application Startup Path uygulamanın çalıştığı dizini verir. Örneğin "...\Desktop\Uygulama". Yapmanız gereken müzik dosyasının adını bu dizine ekletmek ki şu şekilde yapabilirsiniz:
C#:
string muzikdizin = Application.StartupPath + @"\muzik.mp3"
Ya da müzik dosyasının adı bir değişken ise:
C#:
string muzikdizin = Application.StartupPath + @"\" + muzikadi
Dikkat etmemiz gereken nokta, "muzikadi" adlı değişkenin dosyanın uzantısını da içermesi gerekir. Mesela "muzik1.mp3" gibi.
Genelde, özellikle de müzik dosyasının adı bir değişkense, "\" koymayı unuturuz ki bize dönen sonuç da: "...Desktop\Uygulamamuzik.mp3" gibi olur ve hata verir. Dolayısıyla bu noktada dikkat etmek gerek.
 
Application Startup Path uygulamanın çalıştığı dizini verir. Örneğin "...\Desktop\Uygulama". Yapmanız gereken müzik dosyasının adını bu dizine ekletmek ki şu şekilde yapabilirsiniz:
C#:
string muzikdizin = Application.StartupPath + @"\muzik.mp3"
Ya da müzik dosyasının adı bir değişken ise:
C#:
string muzikdizin = Application.StartupPath + @"\" + muzikadi
Dikkat etmemiz gereken nokta, "muzikadi" adlı değişkenin dosyanın uzantısını da içermesi gerekir. Mesela "muzik1.mp3" gibi.
Genelde, özellikle de müzik dosyasının adı bir değişkense, "\" koymayı unuturuz ki bize dönen sonuç da: "...Desktop\Uygulamamuzik.mp3" gibi olur ve hata verir. Dolayısıyla bu noktada dikkat etmek gerek.

Peki bu müziğin kodlar ile sesini nasıl azaltabilirim?
 
Son düzenleyen: Moderatör:
Peki bu müziğin kodlar ile sesini nasıl azaltabilirim?
Konu başında Windows Media Player dediğiniz için ona göre anlatıyorum.
Olay basit. Bu nesnenin "Settings" altında "Volume" değerini değiştirerek. Bu seçenek yanlış hatırlamıyorsam 0 ile 100 arasında değer alıyordu.
Objenin adı "wmPlayer" olsun.
C#:
wmPlayer.settings.volume = 25
Bu şekilde sesi ayarlayabilirsiniz.
 
Geçenlerde para ile çalışan bir makineye bir tür Youtube istek programı kodladığım için detaylı yardımcı olabilirim bu konuda. Gerçi basit şeyler :) Microsoft'un sayfasında Media Player nesnesinin özellikleri detaylı şekilde sıralanıyor, işine yarayanı bulup kullanmak kalıyor sana da.

ListBox nesnesindeki ses dosyası konumunu çalıştırmak için.
C#:
axWindowsMediaPlayer1.URL = listBox5.Items[0].ToString();

Şarkı durmuşsa Timer ile algılayıp yeni şarkıya geçebilir veya rastgele çaldırabilirsin bu komut içerisinde.
C#:
if (axWindowsMediaPlayer1.playState.ToString() == "wmppsStopped")
{
//////////////////////
}

Aynı şekilde çalıyorsa istediğin işlemi yaptırabilirsin, ben amaç gereği çalmaya devam ettirmişim.
C#:
if (axWindowsMediaPlayer1.playState.ToString() != "wmppsPlaying") //İstek yoksa ve Media1 çalmıyorsa Play yapıyor.
                {
                    axWindowsMediaPlayer1.Ctlcontrols.play(); //Çalmaya devam ettirir
                }

Çalmayı duraklatabilirsin
C#:
axWindowsMediaPlayer1.Ctlcontrols.pause();

Player'ın yürüt butonu ile aynı işleve sahip
C#:
 axWindowsMediaPlayer1.Ctlcontrols.play();

Yürütülen dosyanın kaçıncı saniyede olduğu bilgisini verir
C#:
int a = Convert.ToInt32(axWindowsMediaPlayer1.currentMedia.duration);

ProgressBar kullanarak şarkı işledikçe çubuğu ilerletebilirsin. Barın maxsimum değerini aşmaması için maksimum limit değerini sürekli güncellemen gerekli dosyayı yürütmeden önce.
Hatta İf döngüsü ile (Dosyanın uzunluğu !> Progressbar limitinden) gibi bir şart da koymak gerekiyor, karmaşık işlemlerde Progress bar limiti yüzünden hata alabilirsin limiti aştığı için.
C#:
progressBar1.Maximum = a;
                progressBar1.Value = Convert.ToInt32(axWindowsMediaPlayer1.Ctlcontrols.currentPosition);

Bu verdiğim kodları farklı şekillerde kullanarak oldukça hakim olabilirsin bu olaya. Genelde bu kodlar iş görüyor.
Bu sayfadan da işine yarayan bir şeyler çıkabilir: MediaPlayer Class (System.Windows.Media)
 
Son düzenleme:
Uyarı! Bu konu 8 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Yeni konular

Geri
Yukarı