【发布时间】:2011-09-19 18:13:52
【问题描述】:
我已经使用 SDL 和 Visual Studio 2010 在 C++ 中编写了一个 noughts and crosss 游戏。我已经在 Release 中构建了它,如果我在我编译它的计算机上运行 .exe,它可以正常工作(Windows 7 64bit Home优质的)。
我尝试在我的笔记本电脑上运行它(Windows 7 x86 Home Premium),它打开了一个 SDL 窗口并立即关闭。我发现它在加载特定文件时崩溃了,所以在初始化代码中添加了一个控制台输出,结果是它找不到这个文件:
if((menuSurface = Surface::Load("gfx/menu.png")) == NULL){
std::cout << "menu Did not load.";
system("pause");
return false;
}
奇怪的是,这是第二个加载的文件,原来的计算机可以找到它。
上面的问题已经解决了! 我只是忘记添加 sdl_image 附带的额外 .dll 文件,例如 zlib1.dll、libpng12-0.dll 等……第二个问题仍然存在。
另外在我朋友的电脑上运行时,出现这个错误
TestWin32.exe – 系统错误
程序无法启动,因为您的文件中缺少 MSVCR100.dll *电脑。尝试重新安装程序以解决此问题。*
我将 MSVCR100.dll 文件与 .exe(连同 SDl.dll 和 SDL_image.dll)包含在同一文件夹中,但仍然没有乐趣。该文件存在于他的 SysWOW64 文件夹中,但程序没有提取它。谁能看看是什么原因造成的?
【问题讨论】:
-
吹毛求疵:不是结,而是零或可能零。
-
哈哈谢谢,更新了! :P @NemanjaTrifunovic 尝试将构建模式更改为 MT,但我在 msvcrt.lib 文件中遇到了一堆链接错误:/
标签: c++ visual-studio-2010 visual-c++ sdl windows-7-x64