【问题标题】:Is it possible to build one single .exe file for my cocos2d-x game?是否可以为我的 cocos2d-x 游戏构建一个单独的 .exe 文件?
【发布时间】:2015-09-12 20:10:26
【问题描述】:

我设法使用 cocos 控制台和 Visual Studio 2015 Express C++ 为我的 cocos2d-x 游戏构建了一个 Windows 可执行文件。

“发布”文件夹中的输出是我的可执行游戏和几个.dll 文件。还有游戏资源。换句话说,我的游戏没有包含在单个 .exe 中,这是我的预期输出。

是否可以为我的 cocos2d-x 游戏构建单个 .exe 文件?一个包含所有需要的东西?

我用于构建的 cocos 控制台命令是

cocos deploy -p WIN32 -m RELEASE

【问题讨论】:

  • 您需要检查是否有静态库,并将库路径设置为静态库位置。

标签: c++ visual-studio cocos2d-iphone cocos2d-x


【解决方案1】:

可能不会。不过你可以试试。

但是,您需要对项目进行大量更改:

您需要将显式 cocos 框架项目添加到您的工作区,并更改它以生成静态库。对作为 dll 包含的所有其他 3rd 方库重复此操作 - 包括将所有项目更改为使用静态而不是动态 c 运行时。这将消除对任何补充 dll 的需要。

剩下的将是资产。在这里,您需要创建一个 Windows RC 文件并将所有资产作为 RT_BINARY 资源添加到该文件中。要从您的 EXE 资源块中实际加载资源,您需要提供 cocos2d::FileUtils 的自定义版本,并覆盖所有 getFileDataFrom(... 方法以使用相关的 win32 api (FindResource, LoadResource, LockResource)。

很可能但是 coco 的某些部分需要文件路径,并且会显式使用文件 io 从文件中读取,在这种情况下,您将覆盖 FileUtils::fillPathForFilename 以将资源作为文件写入临时文件夹,并将该路径返回给 cocos。


这是一篇有用的博客文章,展示了如何在 win32 二进制文件中嵌入资源: * https://blog.kowalczyk.info/article/zy/Embedding-binary-resources-on-Windows.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-11
    • 2020-08-27
    • 1970-01-01
    • 2013-07-29
    相关资源
    最近更新 更多