C#控制台:你能在项目所在的文件夹中找到一个.wav文件吗

C#控制台:你能在项目所在的文件夹中找到一个.wav文件吗,c#,resources,visual-studio-2019,C#,Resources,Visual Studio 2019,您能在控制台项目的“调试”文件夹中找到.wav文件吗? -我需要做的事- 我试图在我的游戏中玩一个循环.wav文件(它是一个控制台项目,而不是窗体),即使代码在任何计算机上运行,我也需要找到.wav文件。例如,如果我将游戏放在USB上,并在另一台计算机上运行,则代码需要在项目文件夹中找到.wav文件 -问题- 目前,我的代码如下所示: static void Main(string[] args) { var soundPlayer = new System.Media.

您能在控制台项目的“调试”文件夹中找到.wav文件吗?

-我需要做的事-

我试图在我的游戏中玩一个循环.wav文件(它是一个控制台项目,而不是窗体),即使代码在任何计算机上运行,我也需要找到.wav文件。例如,如果我将游戏放在USB上,并在另一台计算机上运行,则代码需要在项目文件夹中找到.wav文件

-问题-

目前,我的代码如下所示:

static void Main(string[] args)
    {
        var soundPlayer = new System.Media.SoundPlayer();
        soundPlayer.SoundLocation = @"C:\ProjectFolder\song.wav";
        soundPlayer.PlayLooping();
    }
这确实会播放我的.wav文件,但如果我将其带到另一台计算机,它会尝试在我的HDD上查找.wav文件,而不是在新计算机的HDD/SSD上

-我尝试过的-

我已经看过了,我找到的每一个答案都不起作用。这是一个本应有效但却无效的答案:

static void Main(string[] args)
    {
        var soundPlayer = new System.Windows.Media.MediaPlayer();
        soundPlayer.Open(new Uri(Application.StartupPath + @"\ProjectFolder\song.wav"));
        soundPlayer.PlayLooping();
    }
在Visual Studio编辑器中,第1行的“媒体”和第2行的“应用程序”都带有红色下划线

-救命-

我希望这是一个常见的问题,你们都是比我能找到答案更好的程序员。 请这将是非常有帮助的,如果你能在下面发表评论,即使你知道任何与此相关的事情,或可以指给我的人谁知道。感谢您的阅读。

您通常会:

  • 进入MSVS解决方案资源管理器

  • 将文件添加到项目根目录(或类似“wav”的子目录)

  • 右键单击.wav文件>选择“属性”>选择“复制到输出目录”=>复制(如果更新)

    因此,每次构建项目时,该文件都会自动复制到构建目录

  • 在代码中,可以使用相对路径打开

    示例:
    soundPlayer.Open(新Uri(“song.wav”)

  • 注意

    您还说第1行的“媒体”带红色下划线…

    这意味着您需要添加对“System.Media”的引用:

    我不确定您使用的是什么平台,但也请看这里:

    您通常:

  • 进入MSVS解决方案资源管理器

  • 将文件添加到项目根目录(或类似“wav”的子目录)

  • 右键单击.wav文件>选择“属性”>选择“复制到输出目录”=>复制(如果更新)

    因此,每次构建项目时,该文件都会自动复制到构建目录

  • 在代码中,可以使用相对路径打开

    示例:
    soundPlayer.Open(新Uri(“song.wav”)

  • 注意

    您还说第1行的“媒体”带红色下划线…

    这意味着您需要添加对“System.Media”的引用:


    我不确定您使用的是什么平台,但也请看这里:

    这是否回答了您的问题?对于“媒体”,您可能需要参考其他库。该“应用程序”可能只需要一个“使用”指令。将文本光标放在带下划线的文本上,按Ctrl+period,然后查看VS的建议这是否回答了您的问题?对于“媒体”,您可能需要参考其他库。该“应用程序”可能只需要一个“使用”指令。将文本光标放在带下划线的文本上,按Ctrl+period,然后查看VS的建议