我正在尝试按照这个答案将一些音频文件添加到 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。