VBOXSDL不兼容64位操作系统的解决办法
来源:未知 责任编辑:智问网络 发表时间:2013-11-04 19:51 点击:次
VBOXSDL不兼容64位操作系统的解决办法
最近在玩Virtual Box,感觉非常不错。但是在用VBoxSDL.exe启动虚拟机的时候碰到点问题,
在windows7 x64下SDL会运行报错:www.2cto.com
SDL Error: 'DirectInputDevice::SetDataFormat: Invalid parameters'
研究了一下VBox的源代码,怀疑是SDL.dll里的问题,于是下载了SDL 1.2的源代码,重新编译一个x64的SDL.DLL看看。打开VisualC目录下的工程文件,发现只有WIN32版的编译配置,自己新建了一个x64的编译配置,编译正确,到了Link的时候报错:
.\release\SDL.obj : fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86'
检查了Link里的编译配置,明明是选了MachineX64 (/MACHINE:X64),google了老半天MSDN也翻遍了,还是百思不得起解。最后没辙了,手工打开SDL.vcproj逐项检查,终于找到有一行:
www.2cto.com
AdditionalOptions="/MACHINE:I386"
这个AdditionalOptions是神马呢?在VS的设置界面里找了半天,终于发现在Linker->Command Line的底下有一个Additional options。我X,太坑爹了!浪费了我一个小时!!!
最后,Link顺利通过,用新编译的SDL.DLL替换VBox安装目录下的SDL.DLL,再次启动,顺利通过.
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>