阅读:2976回复:1
为何在内核模式程序中包含winnt.h或window.h头文件总会出现类似下面的错误?
Compiling - mydriver.c for i386
d:\ntddk\inc\winnt.h(294) : error C2054: expected '(' to follow 'BYTE' d:\ntddk\inc\winnt.h(295) : error C2085: 'WORD' : not in formal parameter list d:\ntddk\inc\winnt.h(295) : error C2146: syntax error : missing ',' before ident ifier 'FSHORT' d:\ntddk\inc\winnt.h(296) : error C2085: 'DWORD' : not in formal parameter list d:\ntddk\inc\winnt.h(296) : error C2146: syntax error : missing ',' before ident ifier 'FLONG' d:\ntddk\inc\winnt.h(351) : error C2082: redefinition of formal parameter 'CCHAR ' d:\ntddk\inc\winnt.h(352) : error C2085: 'DWORD' : not in formal parameter list d:\ntddk\inc\winnt.h(352) : error C2146: syntax error : missing ',' before ident ifier 'LCID' d:\ntddk\inc\winnt.h(353) : error C2085: 'PDWORD' : not in formal parameter list d:\ntddk\inc\winnt.h(353) : error C2146: syntax error : missing ',' before ident ifier 'PLCID' d:\ntddk\inc\winnt.h(354) : error C2085: 'WORD' : not in formal parameter list d:\ntddk\inc\winnt.h(354) : error C2146: syntax error : missing ',' before ident ifier 'LANGID' d:\ntddk\inc\winnt.h(378) : error C2011: '_FLOAT128' : 'struct' type redefinitio n d:\ntddk\inc\winnt.h(381) : error C2059: syntax error : ';' d:\ntddk\inc\winnt.h(421) : error C2011: '_LARGE_INTEGER' : 'union' type redefin ition d:\ntddk\inc\winnt.h(440) : error C2011: '_ULARGE_INTEGER' : 'union' type redefi nition d:\ntddk\inc\winnt.h(462) : error C2011: '_LUID' : 'struct' type redefinition d:\ntddk\inc\winnt.h(572) : error C2146: syntax error : missing ')' before ident ifier 'ShiftCount' d:\ntddk\inc\winnt.h(572) : error C2081: 'DWORD' : name in formal parameter list illegal d:\ntddk\inc\winnt.h(572) : error C2061: syntax error : identifier 'ShiftCount' d:\ntddk\inc\winnt.h(572) : error C2059: syntax error : ';' d:\ntddk\inc\winnt.h(573) : error C2059: syntax error : ')' d:\ntddk\inc\winnt.h(579) : error C2146: syntax error : missing ')' before ident ifier 'ShiftCount' d:\ntddk\inc\winnt.h(579) : error C2081: 'DWORD' : name in formal parameter list illegal d:\ntddk\inc\winnt.h(579) : error C2061: syntax error : identifier 'ShiftCount' d:\ntddk\inc\winnt.h(579) : error C2059: syntax error : ';' d:\ntddk\inc\winnt.h(580) : error C2059: syntax error : ')' |
|
沙发#
发布于:2008-09-05 09:19
因为驱动中不能使用 win32 api 的头文件,只能用 ddk.h,wdm.h 之类的。
|
|