无法参考microsoft.xna.framework.media.phoneextensions.dll

时间:2014-07-20 09:08:15

标签: .net windows-phone-7 dll xna windows-phone-7-emulator

我正在尝试按照this的答案将一些音频文件添加到Windows手机模拟器的媒体库中。但我收到了错误

  

名称空间“Microsoft.Xna.Framework.Media”中不存在类型或命名空间名称“PhoneExtensions”(您是否缺少程序集引用?)`

我无法引用microsoft.xna.framework.media.phoneextensions.dll,因为它不在该位置

  

C:\ Program Files \ Reference Assemblies \ Microsoft \ Framework \ Silverlight \ v4.0 \ Profile \ WindowsPhone71

我安装了Microsoft XNA Game Studio 4.0,但仍无法在系统文件夹中找到dll 我试过但无法在互联网上的任何地方获取dll 这是我的代码(如果重要的话)

Uri file = new Uri("files/a_wink.mp3", UriKind.Relative);
var myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication();
var fileStream = myIsolatedStorage.CreateFile("a_wink.mp3");
var resource = Application.GetResourceStream(file);
int chunkSize = 2000000;
byte[] bytes = new byte[chunkSize];
int byteCount;
while ((byteCount = resource.Stream.Read(bytes, 0, chunkSize)) > 0)
    fileStream.Write(bytes, 0, byteCount);
fileStream.Close();
Microsoft.Xna.Framework.Media.PhoneExtensions.SongMetadata metaData =
    new Microsoft.Xna.Framework.Media.PhoneExtensions.SongMetadata();
metaData.AlbumName = "Some Album name";
metaData.ArtistName = "Some Artist Name";
metaData.GenreName = "test";
metaData.Name = "someSongName";

var ml = new MediaLibrary();
Uri songUri = new Uri("someSong.mp3", UriKind.RelativeOrAbsolute);
var song =
    Microsoft.Xna.Framework.Media.PhoneExtensions.MediaLibraryExtensions.SaveSong(
        ml, songUri, metaData,
        Microsoft.Xna.Framework.Media.PhoneExtensions.SaveSongOperation.CopyToLibrary
    );

修改 我在Vista Home Basic上使用Windows Phone SDK 7.1。

1 个答案:

答案 0 :(得分:6)

安装WP8 SDK后,您可以在此处找到该库

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\WindowsPhone\v8.0\Microsoft.Xna.Framework.MediaLibraryExtensions.dll

如果您无法安装WP8 SDK 您可以在此处找到XNA Framework dll: