2013-01-15 129 views
0

我是Windows Phone開發新手,我正在嘗試做一個簡單的培訓應用程序。從WP應用程序的項目文件夾訪問文件

我想讓我的應用程序加載一些音頻文件,放入項目中的文件夾。

這裏是一個簡短的片斷:

private void LoadSound(String SoundFilePath, out SoundEffect Sound) 
    { 

     // For error checking, assume we'll fail to load the file. 
     Sound = null; 
     try 
     {     
      // Holds informations about a file stream.     
      StreamResourceInfo SoundFileInfo = Application.GetResourceStream(new Uri(SoundFilePath, UriKind.Relative)); 

我的文件夾結構是一樣的東西

- Project 
    - Kits 
     - TestKit_128 
      - Bass_126.wav 

,並呼籲

Button.setSound("Kits\\TestKit_128\\bass_126.wav"); 

拋出一個System.NullReferenceException因爲沒有找到路徑時的URI被建造。 (至少我是這麼認爲的!)

我該怎麼辦?

當我第一次運行應用程序時,是否有任何方法從項目中的文件夾加載文件或將它們複製到IsolatedStorage中?

感謝

編輯:

我剛剛打開XAP文件用WinRAR並沒有「工具包」的文件夾,所以我想我的問題是如何使它的文件夾添加到XAP文件。

回答

0

我認爲你必須將文件夾和文件添加到你的項目(我假設你正在使用Visual Studio)。嘗試右鍵點擊你的解決方案,並添加一個現有的對象(在這種情況下你的WAV文件)。

+0

這工作。使用Java,您可以複製並粘貼內容,但我不知道我需要在Visual Studio中添加它們。謝謝! – StepTNT

0

您是否將wav文件的構建操作設置爲「內容」?右鍵單擊WAV文件 - >屬性 - >構建動作==內容。

0

試試這個:

 Uri uri = new Uri("Kits/TestKit_128/bass_126.wav", UriKind.Relative);//Above the Kits folder only the project itself. 
     StreamResourceInfo sr = Application.GetResourceStream(uri); 

     try 
     { 
      using (Stream stream = sr.Stream) 
      { 
       //working here with your data image or wav or whatever you want from URI 
      } 
     } 
     catch (Exception) 
     { 
     } 

這是內部項目資源,併爲我工作好。此外,有關「內容」的預先說明是正確的,如果沒有它,它將無法正常工作。我認爲問題是地址上的雙重斜線。

相關問題