Allegro 5-宇宙保护器演示

时间:2018-11-18 00:22:07

标签: allegro5

我是C ++和Allegro 5的新手,但是能够在线学习教程,并且能够成功构建和编译几个较小的项目。

但是我无法运行名为Cosmic Protector的演示项目,并且想至少了解什么地方不对。

不幸的是,我不能给你太多帮助。

短暂打开一个窗口,然后关闭,使控制台打开并显示消息。 进程6400退出,代码为255

如果您通过nuget安装的最新版本的Allegro 5(5.2.4)在VC 2017中运行此演示,我什至也想知道。

该程序的来源可在... https://github.com/liballeg/allegro5/tree/master/demos/cosmic_protector

谢谢杰克

2 个答案:

答案 0 :(得分:1)

Allegro示例程序和演示通常与CMake以及Allegro库一起构建。我刚刚在Windows 10上使用VS2017测试了Allegro 5的CMake构建,并成功构建了Cosmic Protector演示。您必须将allegro dll移到与exe相同的目录中,但它不能完美运行。

关于为何它对您不起作用的原因,宇宙保护器取决于保存其资源的数据目录。工作目录可能是错误的,这将导致它无法找到资源。数据目录需要与可执行文件一起复制。

您可以在Project-> Properties中的Debugging下将工作目录设置为$(OutDir),然后它将在与exe相同的目录中找到任何数据。

您如何建造宇宙保护器?

答案 1 :(得分:1)

感谢BugSquasher,现在我可以进行此工作。

这是...

  1. 启动Visual Studio 2017
  2. 创建Windows控制台应用程序类型的新项目。
  3. 命名项目CosmicProtector并将其保存在我的硬盘上的适当位置。
  4. 禁用预编译头并删除任何.h和.cpp 与新项目相关的有关预编译头的文件。 (例如pch.h)
  5. 通过Nuget安装Allegro 5.2.4。
  6. 在Visual Studio中,导航到“项目设置/属性”,并确保所有 Allegro插件已启用。
  7. 复制Cosmic Protector SRC和标头文件并将其粘贴到我的
    中 项目目录。
  8. 接下来在Visual Studio项目中,添加源文件和头文件
    分别。

愚蠢的是,我错过了那一步,而您的回复引起了我的注意……

  1. 复制数据目录并将其粘贴到我的项目目录中 适用位置。
  2. 现在建立...

该项目立即建立,除了Game.cpp,GUI.cpp和Render.cpp中报告的一些错误

Game.cpp中的一个错误,这是...的一个实例 错误C4996'snprintf':此函数或变量可能不安全。考虑改用snprintf_s。要禁用弃用,请使用_CRT_SECURE_NO_WARNINGS。

  

为解决这个问题,我将snprintf的实例更改为sprintf_s。

GUI.cpp中的三个错误是...的实例 错误C4996'strcpy':此函数或变量可能不安全。考虑改用strcpy_s。要禁用弃用,请使用_CRT_SECURE_NO_WARNINGS。

  

为解决所有这些问题,我将每个strcpy实例都更改为strcpy_s。

还有GUI.cpp中的一个错误,这是...的一个实例 错误C4996'snprintf':此函数或变量可能不安全。考虑改用snprintf_s。要禁用弃用,请使用_CRT_SECURE_NO_WARNINGS。

  

为解决这个问题,我将snprintf的实例更改为sprintf_s。

Render.cpp中的一个错误,这是...的一个实例 错误C4996'sprintf':此函数或变量可能不安全。考虑改用sprintf_s。要禁用弃用,请使用_CRT_SECURE_NO_WARNINGS。

  

为解决这个问题,我将sprintf的实例更改为sprintf_s。

然后构建并运行:)

非常感谢您的答复,因为我已经转至其他内容,但是我认为能够构建并运行此演示非常有用。 只是您的回信使我重新回到了这一点,这次,我成功了:)