2

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

命名空间“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。

4

1 回答 1

6

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

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

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

于 2014-07-20T12:29:18.080 回答