本节课学习目标发布为一个独立的.exe文件把所有资源打包进去发给朋友他们不需要装任何东西就能玩第一步确保资源文件正确在 Visual Studio 右侧“解决方案资源管理器”里检查以下文件文件属性“复制到输出目录”Content/player_spritesheet.png如果较新则复制Content/consola.ttf如果较新则复制Content/coin.wav如果较新则复制Content/hit.wav如果较新则复制Content/shoot.wav如果较新则复制右键每个文件 →属性→ 确认“复制到输出目录”是“如果较新则复制”。第二步改读取路径在发布版中资源文件在.exe旁边需要用AppDomain.CurrentDomain.BaseDirectory来定位。在Game1.cs顶部添加using System.Reflection;然后把所有File.OpenRead(Content/xxx)改成使用绝对路径。创建辅助方法放在Game1类里csharpprivate string GetContentPath(string relativePath) { string baseDir AppDomain.CurrentDomain.BaseDirectory; return Path.Combine(baseDir, Content, relativePath); }修改 LoadContent 里的所有加载路径csharp// 旧的 using var stream File.OpenRead(Content/player_spritesheet.png); // 新的 using var stream File.OpenRead(GetContentPath(player_spritesheet.png));同样的方式改字体和音效加载。第三步发布设置在 Visual Studio 顶部菜单栏把Debug改成Release右键你的项目 →发布选择文件夹目标位置选桌面或你方便找的地方点击完成→发布第四步设置发布选项发布完成后在项目属性里做一些关键设置右键项目 →属性点击左侧发布点击显示所有设置关键设置设置值部署模式独立自包含对方不用装 .NET目标运行时win-x64生成单个文件勾选全部打包成一个 .exe保存再次点击发布第五步复制 Content 文件夹发布出来的.exe需要和Content文件夹在一起。把项目里的Content文件夹完整复制到发布文件夹里。最终发布文件夹的结构text发布文件夹/ ├── 你的游戏.exe ├── Content/ │ ├── player_spritesheet.png │ ├── consola.ttf │ ├── coin.wav │ ├── hit.wav │ ├── shoot.wav │ └── ... ├── savedata.json会自动生成第六步测试把整个发布文件夹复制到另一台电脑或发给朋友双击.exe文件应该能直接运行不需要安装任何东西本节课学习到此结束我是魔法阵维护师关注我下期更精彩