无法将WAV文件导入Visual Studio

时间:2016-08-19 04:11:59

标签: vb.net

我从2012年开始升级到Visual Studio 2015,它让我彻底搞砸了。我不能再将WAV文件导入到我的项目资源中,而不将它们变成MemoryStream,我的代码不会接受它。我现在一直在寻找几个小时,我真的很沮丧。有人请帮我这个吗?我正在根据这些说明完全导入文件:How to: Import or Export Resources

如果您需要图片或其他信息,请告诉我。我现在非常绝望。

2 个答案:

答案 0 :(得分:1)

我不确切地知道你认为自己在VS 2012中有什么样的体验,但我刚刚测试了VS 2015,2013和2012,他们的工作方式完全相同。我只需打开项目属性,选择Resources页面,单击Add Resource下拉列表,选择Add Existing File并导航到我想要的WAV文件。该文件已添加为资源,My.Settings的相应属性将该资源公开为类型UnmanagedMemoryStream。正如我所说,在所有三个版本中发生的情况完全相同。如果你在VS 2012中有不同的东西,那么你在VS 2012中做了不同的事情。你还没告诉我们你做了什么,所以我们只能猜测。

您的代码究竟是什么类型的数据?也许那也是提供的好信息。如果它是Byte数组,那么您可以从该资源Stream获取一个,如下所示:

Dim resourceStream = My.Resources.MyWavResource
Dim length = CInt(resourceStream.Length)
Dim resourceData(length - 1) As Byte

resourceStream.Read(resourceData, 0, length)

这正是您从任何StreamByte数组的读取方式。如果您需要多次执行此操作,可以将其放入方法中:

Private Function GetStreamData(stream As Stream) As Byte()
    Dim length = CInt(stream.Length)
    Dim data(length - 1) As Byte

    stream.Read(data, 0, length)

    Return data
End Function

您可以这样称呼它:

Dim data As Byte()

Using resource = My.Resources.MyWavResource
    data = GetStreamData(resource)
End Using

您甚至可以将其作为扩展方法编写,然后在Stream本身上调用它。

答案 1 :(得分:0)

您使用的链接是VS 2010.

打开资源文件。默认情况下,左上角菜单是字符串;但是有一个小的下拉箭头。单击此按钮,第四个选项是Audio。如果您现在单击“添加现有文件”,则默认情况下会过滤.wav文件,并将其添加为。