2012-08-06 60 views
-1

我使用以下代碼在點擊按鈕時播放音樂。任何電腦的聲音播放

private void button1_Click(object sender, EventArgs e) 
    { 
     SoundPlayer s = new SoundPlayer(); 
     s.SoundLocation = @"f:\1.wav"; 
     s.Play(); 
    } 

但是,這些代碼只適用於我的電腦我應該怎麼做,以便我可以在其他計算機上播放這種聲音,如數據庫。我應該怎麼做才能在其他電腦上播放這首歌曲?

在此先感謝

+0

你是什麼意思數據庫的文件內容流「像數據庫中的其他計算機上播放這個聲音」? – Shai 2012-08-06 09:40:06

+0

您是否期望另一臺無法訪問「f:\ 1.wav」的計算機能夠播放它? – Oded 2012-08-06 09:41:04

+0

我的意思是當我做一個設置,並希望在其他計算機上使用此應用程序,它將無法正常工作,導致位置在我的電腦f:\ 1.wav中。我該怎麼做,以便我可以在其他電腦上播放這首歌曲 – aliboy38 2012-08-06 09:41:41

回答

4

可以導入該項目的資源文件,並使用

Properties.Resources.<name_of_resource> 

爲了進口一些東西到資源請執行下列操作從那裏加載它(假設你使用Visual Studio 2010 - 它是類似於其他我想版本):

在Visual Studio 2010解決方案資源管理器中,右鍵點擊屬性 - >打開 - >資源 - >添加資源 - >添加現有文件

請注意,當您稍後將其他計算機安裝到應用程序時,資源也將被安裝。

爲了發揮你需要做的的聲音,然後執行以下操作:

SoundPlayer myPlayer = new SoundPlayer(yourNamespace.Properties.Resources.mySound); 
myPlayer.Play(); 
+0

那麼我該怎麼做代碼?如何玩資源? – aliboy38 2012-08-06 09:48:00

+0

我會將代碼添加到我的答案中,以便更容易發現。覈實。 – gkaran89 2012-08-06 09:50:34

+0

謝謝。有效 – aliboy38 2012-08-06 10:04:30

0

你可以這樣做,從數據庫中獲取或遠程系統中的文件內容流和流傳遞到聲音播放實例。

0

您可以將聲音存儲到應用的子文件夾,並通過文件的相對路徑來訪問(我相信,但我m會精確地查看它,它是在winforms環境中的Application.StartupPath)。

或者你可以讓他們的資源(見gkaran89的答案)。

3

你可以做這樣的事情,得到