今天下了个CheatEngine55看看,在编译时出了点小问题,编译时出现以下错误提示:
error - no 'object' file generated
1>f:\cheatengine55src\dbkkernel\ntifs.h(2628) : error C2011: '_FILE_FS_FULL_SIZE
_INFORMATION' : 'struct' type redefinition
1>f:\cheatengine55src\dbkkernel\ntifs.h(2636) : error C2011: '_FILE_FS_LABEL_INF
ORMATION' : 'struct' type redefinition
1>f:\cheatengine55src\dbkkernel\ntifs.h(2650) : error C2011: '_FILE_FS_SIZE_INFO
RMATION' : 'struct' type redefinition
1>f:\cheatengine55src\dbkkernel\ntifs.h(2657) : error C2011: '_FILE_FS_VOLUME_IN
FORMATION' : 'struct' type redefinition
1>f:\cheatengine55src\dbkkernel\ntifs.h(3371) : error C2011: '_RTL_SPLAY_LINKS'
: 'struct' type redefinition
Compiling - generating code...
Linking Executable - objfre_wxp_x86\i386\dbk32.sys
1>link : error LNK1181: cannot open input file 'f:\cheate~1\dbkker~1\objfre_wxp_
x86\i386\dbkdrvr.obj'
BUILD: Finish time: Sun Jul 10 09:48:40 2011
BUILD: Done
10 files compiled - 8 Warnings - 48 Errors
1 executable built - 1 Error
.\objfre_wxp_x86\i386\*.sys
The system cannot find the file specified.
0 file(s) copied.
这说明有重定义的地方,GOOGLE搜了下,说是要DDK 6000+才能编译,我的是WDK,所以干脆就把这些重定义的地方注释掉。
注释掉后现编译出现如下提示:
1>f:\cheatengine55src\dbkkernel\ntifs.h(1228) : error C2220: warning treated as
error - no 'object' file generated
Compiling - threads.c
1>f:\cheatengine55src\dbkkernel\ntifs.h(1228) : error C2220: warning treated as
error - no 'object' file generated
Compiling - vmxhelper.c
1>f:\cheatengine55src\dbkkernel\ntifs.h(1228) : error C2220: warning treated as
error - no 'object' file generated
Compiling - newkernel.c
1>f:\cheatengine55src\dbkkernel\ntifs.h(1228) : error C2220: warning treated as
error - no 'object' file generated
Compiling - generating code...
Linking Executable - objfre_wxp_x86\i386\dbk32.sys
1>link : error LNK1181: cannot open input file 'f:\cheate~1\dbkker~1\objfre_wxp_
x86\i386\dbkdrvr.obj'
BUILD: Finish time: Sun Jul 10 09:55:02 2011
BUILD: Done
10 files compiled - 8 Warnings - 8 Errors
1 executable built - 1 Error
.\objfre_wxp_x86\i386\*.sys
The system cannot find the file specified.
0 file(s) copied.再GOOGLE搜下解决办法。结论是这是一个“关掉编译选项的问题”。
修改 WDKPATH\i386.inc文件中的
MSC_WARNING_LEVEL=$(MSC_WARNING_LEVEL) $(COMPILER_WX_SWITCH)
改为
MSC_WARNING_LEVEL=$(MSC_WARNING_LEVEL) $(COMPILER_WX_SWITCH)
MSC_WARNING_LEVEL=/W1
另一个办法是:
直接在项目中的makefile文件的最后一行加入
MSC_WARNING_LEVEL=/W1
再次编译后通过。
2238



被折叠的 条评论
为什么被折叠?



