我正在努力寻找任何适用于当前 Unity 的方法。
这适用于传统的 Windows 构建(不是通过 VS 的 Windows 通用版本)。
因此,构建过程中存在单独的数据、dll 等文件:如何使用当前的 Unity 创建适用于 Windows 的民用“单个 exe”?
正如所说,afaik 实际上总是如此。
请参阅Windows 独立播放器构建二进制文件以查看构建的结果输出列表。它一直存在到版本2017.2。
所以简短的答案是:
事情就是这样。您始终会得到多个文件和数据文件夹作为输出。
然而,您可以做的是使用打包工具,该工具只需将所有文件夹内容打包到一个 exe 文件中。
Appacker就是一个例子
=>
但不幸的是,有一个已知问题:Windows Defender 将其以及用它创建的每个 exe 识别为恶意软件。作者在链接中实际上提到了其原因
剧透:自解压 .exe 文件?Windows Defender 讨厌这个伎俩!
因此,无论使用此工具还是任何类似的工具,都没有真正的解决办法,除非您需要信任该工具并且您的用户需要信任您^^
(该图标也仅用于进程窗口,不用于exe文件本身^^)
漫长而正确的方法可能是为您的最终应用程序创建一个实际的安装程序,然后允许将所有文件提取到某个位置。
因此,最终用户无论如何都会再次拥有一个 exe 以及相应的数据和 dll 文件,例如在Programs文件夹中,但会获得一个注册的“开始”菜单快捷方式,这就是 Windows 上任何其他应用程序通常的工作方式。