无法播放wav文件vb net

时间:2013-01-31 16:59:11

标签: vb.net

我正在使用一个函数来返回一个字符串,其中包含我想要播放的* .wav文件的路径。

这是用于确定当用户点击某些内容时播放哪种声音的函数...

Function GetSoundPath() As String
    Dim theme As String, appPath As String, soundPath As String
    theme = GetUserTheme()
    appPath = LCase(Application.StartupPath & "\themes\" & theme & "\sounds\click.wav")

    Return soundPath

End Function

上述函数获取需要播放的* .wav文件的正确路径。问题是当我使用我的函数“My.Computer.Audio.Play(GetSoundPath)”时,我得到一个错误:

  

创建表单时出错。有关详细信息,请参阅Exception.InnerException。错误是:表单在构造期间从默认实例引用自身,这导致无限递归。在Form的构造函数中,使用'Me。'来表示表单。

我检查了application.vb文件,没有找到我的表单,因为它的名字是“wisealarm”。该表格应该被称为“我”。更奇怪的是,当我在命令中手动键入路径时,它可以正常工作.. e.x. My.Computer.Audio.Play( “C:\用户\ sound.wav”)

非常感谢任何见解。如果需要任何进一步的代码或细节,请告诉我。感谢。

1 个答案:

答案 0 :(得分:0)

表单初始化中存在导致错误的内容,例如类的初始化。如果在此函数中发生错误,您可以在Dim(或等效)语句之外移动调用(或使用“New”初始化)以进行更正常的调试。这可能在form_load函数中。

此外,您将返回未定义的变量SoundPath - 也许您应该在赋值语句中将SoundPath替换为SoundPath。