如何将文件添加到exe

我有一个播放声音的程序,但如果我在另一台计算机上运行它会说找不到文件如何将文件附加到exe上,所以当有人播放exe时它仍然可以播放?

打包项目文件时,在项目文件夹中创建一个文件夹来保存内容数据(文本 – 图片 – video – 声音……等),然后为您的代码提供目标文件的相对路径,而不是绝对路径。

例如:而不是

string path = "c:\Projects\ProjectFolder\FileName"; 

这样做:

  string currentDir = AppDomain.CurrentDomain.BaseDirectory; string fullPath = currentDir + "ContentFolder/FileName.mp3(or whatever)"; 

编辑:

  AppDomain.CurrentDomain.BaseDirectory 

将是应用程序根目录,而不是bin子文件夹 – 这可能是您通常想要的。 在客户端应用程序中,它将是包含主可执行文件的目录。

如果您想将波形文件嵌入到程序中,请转到项目属性 – >资源 – >选择音频作为类型,然后选择添加资源并选择您的音频文件。 这会将音频文件添加到资源目录中。 完成此操作后,您可以右键单击Resources文件夹中的File,然后选择Properties并将Build Action更改为Embedded Resource

要访问该文件,您可以执行以下操作:

 System.Media.SoundPlayer sp = new System.Media.SoundPlayer(Properties.Resources.tada); sp.Play(); 

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

您可以转到文件的属性,然后在复制到输出目录选择下,复制如果更新

在此处输入图像描述

当您准备使用安装程序发布EXE时,可以使用c#程序打包EXE

如果您无法更改源代码,我建议

http://m.instructables.com/id/How-to-create-portable-app/?ALLSTEPS

它是关于创建包含要合并的旧exe +新文件的新exe存档。 当您调用该新exe时,它会运行您的旧exe,但也包含您的音乐文件您可以按照步骤4和5进行操作

将exe和音乐文件放在同一个文件夹中,然后通过该方法压缩它们