zdwang
驱动牛犊
驱动牛犊
  • 注册日期2003-10-10
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:4587回复:11

Win2000 Driver(WDM)移植到WinXP为什么出错,请高人指点!

楼主#
更多 发布于:2003-11-26 10:38
My USB Driver Builded in Win2000 DDK OK

But in WinXP SP1 DDK Build error.

error message list:
---------------------
<XPDDK DIR>\\inc\\usbioctl.h:error c4200: nonstandard extension used: zero-sized array in struct/uion

我的头文件
#include \"wdm.h\"
#include \"usb100.h\"
#include \"usbdi.h\"
#include \"usbdlib.h\"
----------------------
请问我需要修改什么吗?

最新喜欢:

r2109twr2109t...
微笑面对生活每一天
zdwang
驱动牛犊
驱动牛犊
  • 注册日期2003-10-10
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-11-26 11:53
怎么没有人知道吗?到底什么地方出了错误?
微笑面对生活每一天
zdwang
驱动牛犊
驱动牛犊
  • 注册日期2003-10-10
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-11-26 11:57
typedef struct _USB_NODE_CONNECTION_INFORMATION {
    ULONG ConnectionIndex;
    /* usb device descriptor returned by this device
       during enumeration */
    USB_DEVICE_DESCRIPTOR DeviceDescriptor;
    UCHAR CurrentConfigurationValue;
    BOOLEAN LowSpeed;

    BOOLEAN DeviceIsHub;

    USHORT DeviceAddress;

    ULONG NumberOfOpenPipes;

    USB_CONNECTION_STATUS ConnectionStatus;
    USB_PIPE_INFO PipeList[0];
} USB_NODE_CONNECTION_INFORMATION, *PUSB_NODE_CONNECTION_INFORMATION;

----------------------------------------
编译时指示, USB_PIPE_INFO PipeList[0];错误,信息是:error c4200: nonstandard extension used: zero-sized array in struct/uion
微笑面对生活每一天
XR_WDM
驱动小牛
驱动小牛
  • 注册日期2002-06-28
  • 最后登录2013-03-01
  • 粉丝1
  • 关注0
  • 积分15分
  • 威望67点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-11-26 16:44
可能,兄台要用xpddk编译一次吧~!
猜测!
后进而勃发
tigerzd
驱动老牛
驱动老牛
  • 注册日期2001-08-25
  • 最后登录2004-12-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-11-26 18:08
也许去掉编译选项/Ze和/Za可以解决吧?以下是MSDN中的解释:

Compiler Warning (levels 2 and 4) C4200
nonstandard extension used : zero-sized array in struct/union

A structure or union contained an array with zero size.

This is a level-4 warning when Microsoft extensions are enabled (/Ze) and a level-2 warning when Microsoft extensions are disabled (/Za).

The following is an example of this error:

struct S { int a[0]; };  // warning



[编辑 -  11/26/03 by  tigerzd]
犯强汉者,虽远必诛! [img]http://www.driverdevelop.com/forum/upload/tigerzd/2002-12-13_sf10.JPG[/img]
dragon_hn
驱动中牛
驱动中牛
  • 注册日期2002-05-18
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分297分
  • 威望40点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-11-28 10:11
正如ZDWANG所说,错误源于“USB_PIPE_INFO PipeList[0]”
不过我在编译时出现的是WARING 4200。应该它不算是一个错误,算一个警告还差不多,把它DISABLE就行了。
禁止它的指令为
 #pragma warning(disable:4200)
www.dragon-2008.com 欢迎交流
zdwang
驱动牛犊
驱动牛犊
  • 注册日期2003-10-10
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-12-08 15:54
我在XPDDK的usbioctl.h文件中,警告声明说该文件已经废弃,我该如何处理?请问有没有知道新的文件是什么?

dragon_hn的方法我试过了,出现同样错误提示! (谢)
微笑面对生活每一天
dragon_hn
驱动中牛
驱动中牛
  • 注册日期2002-05-18
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分297分
  • 威望40点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-12-09 09:40
看我的,没事!不过MSDN上说用DDK XP最好不要在VC下编译而用BUILD命令行编译,而DDK 2K和DDK 98则可
 
www.dragon-2008.com 欢迎交流
zdwang
驱动牛犊
驱动牛犊
  • 注册日期2003-10-10
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-12-09 16:18
以下是WinXP下的编译的log文件
---------------------------------------------------
BUILD: Computing Include file dependencies:
BUILD: Examining f:\\usbcalc\\driver directory for files to compile.
Compiling f:\\usbcalc\\driver directory ********************
\'nmake.exe /c BUILDMSG=Stop. /a -i NTTEST= UMTEST= NOLINK=1 NOPASS0=1 386=1\'
Rebuilding objchk_wxp_x86\\_objects.mac from .\\sources.
objchk_wxp_x86\\_objects.mac was rebuilt, please reinvoke NMAKE
    rc -l 409 -DSXS_ASSEMBLY_NAME=\"\"\"\"\"\"  -DSXS_ASSEMBLY_VERSION=\"\"\"\"\"\"  -DSXS_ASSEMBLY_LANGUAGE=\"\"\"\"\"\"  -DSXS_PROCESSOR_ARCHITECTURE=\"\"\"x86\"\"\"  -DSXS_TARGET=\"\"\"USBCalc.sys\"\"\"   -DSYSTEM_COMPATIBLE_ASSEMBLY_NAME=\"\"\"Microsoft.Windows.SystemCompatible\"\"\"  -DLSYSTEM_COMPATIBLE_ASSEMBLY_NAME=L\"\"\"Microsoft.Windows.SystemCompatible\"\"\"   -z \"MS Sans Serif,Helv/MS Shell Dlg\"  -r -fo objchk_wxp_x86\\i386\\usbkbd.tmp -D_X86_=1 -Di386=1  -DSTD_CALL -DCONDITION_HANDLING=1   -DNT_INST=0 -DWIN32=100 -D_NT1X_=100 -DWINNT=1 -D_WIN32_WINNT=0x0501 /DWINVER=0x0501 -D_WIN32_IE=0x0600    -DWIN32_LEAN_AND_MEAN=1 -DDBG=1 -DDEVL=1 -D__BUILDMACHINE__=WinDDK -DFPO=0  -DNDEBUG -D_DLL=1  -DWMI_SUPPORT -DUSB2   -ID:\\WINDDK\\2600~1.110\\inc\\mfc42 -I\\nt\\inc\\ddk\\wdm\\wxpinc -Iobjchk_wxp_x86\\i386 -ID:\\WINDDK\\2600~1.110\\inc\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\ddk\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\ddk\\wdm\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\crt .\\usbkbd.rc


cl -nologo -Ii386\\ -I. -ID:\\WINDDK\\2600~1.110\\inc\\mfc42 -I\\nt\\inc\\ddk\\wdm\\wxpinc -Iobjchk_wxp_x86\\i386 -ID:\\WINDDK\\2600~1.110\\inc\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\ddk\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\ddk\\wdm\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\crt -D_X86_=1 -Di386=1  -DSTD_CALL -DCONDITION_HANDLING=1   -DNT_INST=0 -DWIN32=100 -D_NT1X_=100 -DWINNT=1 -D_WIN32_WINNT=0x0501 /DWINVER=0x0501 -D_WIN32_IE=0x0600    -DWIN32_LEAN_AND_MEAN=1 -DDBG=1 -DDEVL=1 -D__BUILDMACHINE__=WinDDK -DFPO=0  -DNDEBUG -D_DLL=1  -DWMI_SUPPORT -DUSB2     /c /Zel /Zp8 /Gy -cbstring /W3 /WX /WX /Gz  /QIfdiv- /QIf /G6 /Gi- /Gm- /GX-  /GR- /GF  -Z7 /Od /Oi /Oy-   -FID:\\WINDDK\\2600~1.110\\inc\\wxp\\warning.h     .\\init.cpp .\\dispatch.cpp .\\pnp.cpp .\\deviceio.cpp .\\usb.cpp
init.cpp
warning: using obsolete header file usbioctl.h
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : error C2220: warning treated as error - no object file generated
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(472) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(528) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
dispatch.cpp
warning: using obsolete header file usbioctl.h
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : error C2220: warning treated as error - no object file generated
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(472) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(528) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
pnp.cpp
warning: using obsolete header file usbioctl.h
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : error C2220: warning treated as error - no object file generated
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(472) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(528) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
deviceio.cpp
warning: using obsolete header file usbioctl.h
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : error C2220: warning treated as error - no object file generated
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(472) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(528) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
usb.cpp
warning: using obsolete header file usbioctl.h
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : error C2220: warning treated as error - no object file generated
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(472) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(528) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
Generating Code...
link -out:objchk_wxp_x86\\i386\\USBCalc.sys -machine:ix86 @C:\\DOCUME~1\\王志东\\LOCALS~1\\Temp\\nma02212.
Microsoft (R) Incremental Linker Version 7.00.9210
Copyright (C) Microsoft Corporation.  All rights reserved.

-MERGE:_PAGE=PAGE
-MERGE:_TEXT=.text
-SECTION:INIT,d
-OPT:REF
-OPT:ICF
-IGNORE:4010,4037,4039,4065,4070,4078,4087,4089,4198,4221
-INCREMENTAL:NO
-FULLBUILD
/release
-NODEFAULTLIB
/WX
-debug:FULL
-debugtype:cv
-version:5.1
-osversion:5.1
/opt:nowin98
-STACK:0x40000,0x1000
-map
-driver
-base:0x10000
-align:0x80
-subsystem:native,5.01
-entry:DriverEntry@8
-out:objchk_wxp_x86\\i386\\USBCalc.sys
objchk_wxp_x86\\i386\\usbkbd.res
objchk_wxp_x86\\i386\\init.obj
objchk_wxp_x86\\i386\\dispatch.obj
objchk_wxp_x86\\i386\\pnp.obj
objchk_wxp_x86\\i386\\deviceio.obj
objchk_wxp_x86\\i386\\usb.obj
D:\\WINDDK\\2600~1.110\\lib\\wxp\\i386\\ntoskrnl.lib
D:\\WINDDK\\2600~1.110\\lib\\wxp\\i386\\hal.lib
D:\\WINDDK\\2600~1.110\\lib\\wxp\\i386\\wmilib.lib
D:\\WINDDK\\2600~1.110\\lib\\wxp\\i386\\hidclass.lib
D:\\WINDDK\\2600~1.110\\lib\\wxp\\i386\\usbd.lib
D:\\WINDDK\\2600~1.110\\lib\\wxp\\i386\\ntoskrnl.lib
LINK : fatal error LNK1181: cannot open input file \'objchk_wxp_x86\\i386\\init.obj\'
mapsym -o objchk_wxp_x86\\i386\\USBCalc.sym objchk_wxp_x86\\i386\\USBCalc.map
Microsoft (R) Symbol File Generator NTGroup Version 6.02
Copyright (C) Microsoft Corp 1984 - 1996.  All rights reserved.
Line number support enabled
mapsym: can\'t open input file: objchk_wxp_x86\\i386\\USBCalc.map
Skip Binplace:

Stop.
Linking f:\\usbcalc\\driver directory ********************
\'nmake.exe /c BUILDMSG=Stop. /a -i LINKONLY=1 NOPASS0=1 NTTEST= UMTEST= 386=1\'
Rebuilding objchk_wxp_x86\\_objects.mac from .\\sources.
objchk_wxp_x86\\_objects.mac was rebuilt, please reinvoke NMAKE
    rc -l 409 -DSXS_ASSEMBLY_NAME=\"\"\"\"\"\"  -DSXS_ASSEMBLY_VERSION=\"\"\"\"\"\"  -DSXS_ASSEMBLY_LANGUAGE=\"\"\"\"\"\"  -DSXS_PROCESSOR_ARCHITECTURE=\"\"\"x86\"\"\"  -DSXS_TARGET=\"\"\"USBCalc.sys\"\"\"   -DSYSTEM_COMPATIBLE_ASSEMBLY_NAME=\"\"\"Microsoft.Windows.SystemCompatible\"\"\"  -DLSYSTEM_COMPATIBLE_ASSEMBLY_NAME=L\"\"\"Microsoft.Windows.SystemCompatible\"\"\"   -z \"MS Sans Serif,Helv/MS Shell Dlg\"  -r -fo objchk_wxp_x86\\i386\\usbkbd.tmp -D_X86_=1 -Di386=1  -DSTD_CALL -DCONDITION_HANDLING=1   -DNT_INST=0 -DWIN32=100 -D_NT1X_=100 -DWINNT=1 -D_WIN32_WINNT=0x0501 /DWINVER=0x0501 -D_WIN32_IE=0x0600    -DWIN32_LEAN_AND_MEAN=1 -DDBG=1 -DDEVL=1 -D__BUILDMACHINE__=WinDDK -DFPO=0  -DNDEBUG -D_DLL=1  -DWMI_SUPPORT -DUSB2   -ID:\\WINDDK\\2600~1.110\\inc\\mfc42 -I\\nt\\inc\\ddk\\wdm\\wxpinc -Iobjchk_wxp_x86\\i386 -ID:\\WINDDK\\2600~1.110\\inc\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\ddk\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\ddk\\wdm\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\crt .\\usbkbd.rc


cl -nologo -Ii386\\ -I. -ID:\\WINDDK\\2600~1.110\\inc\\mfc42 -I\\nt\\inc\\ddk\\wdm\\wxpinc -Iobjchk_wxp_x86\\i386 -ID:\\WINDDK\\2600~1.110\\inc\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\ddk\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\ddk\\wdm\\wxp -ID:\\WINDDK\\2600~1.110\\inc\\crt -D_X86_=1 -Di386=1  -DSTD_CALL -DCONDITION_HANDLING=1   -DNT_INST=0 -DWIN32=100 -D_NT1X_=100 -DWINNT=1 -D_WIN32_WINNT=0x0501 /DWINVER=0x0501 -D_WIN32_IE=0x0600    -DWIN32_LEAN_AND_MEAN=1 -DDBG=1 -DDEVL=1 -D__BUILDMACHINE__=WinDDK -DFPO=0  -DNDEBUG -D_DLL=1  -DWMI_SUPPORT -DUSB2     /c /Zel /Zp8 /Gy -cbstring /W3 /WX /WX /Gz  /QIfdiv- /QIf /G6 /Gi- /Gm- /GX-  /GR- /GF  -Z7 /Od /Oi /Oy-   -FID:\\WINDDK\\2600~1.110\\inc\\wxp\\warning.h     .\\init.cpp .\\dispatch.cpp .\\pnp.cpp .\\deviceio.cpp .\\usb.cpp
init.cpp
warning: using obsolete header file usbioctl.h
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : error C2220: warning treated as error - no object file generated
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(472) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(528) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
dispatch.cpp
warning: using obsolete header file usbioctl.h
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : error C2220: warning treated as error - no object file generated
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(472) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(528) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
pnp.cpp
warning: using obsolete header file usbioctl.h
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : error C2220: warning treated as error - no object file generated
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(472) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(528) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
deviceio.cpp
warning: using obsolete header file usbioctl.h
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : error C2220: warning treated as error - no object file generated
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(472) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(528) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
usb.cpp
warning: using obsolete header file usbioctl.h
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : error C2220: warning treated as error - no object file generated
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(449) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(472) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
d:\\WINDDK\\2600.1106\\inc\\wxp\\usbioctl.h(528) : warning C4200: nonstandard extension used : zero-sized array in struct/union
        Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
Generating Code...
link -out:objchk_wxp_x86\\i386\\USBCalc.sys -machine:ix86 @C:\\DOCUME~1\\王志东\\LOCALS~1\\Temp\\nma02260.
Microsoft (R) Incremental Linker Version 7.00.9210
Copyright (C) Microsoft Corporation.  All rights reserved.

-MERGE:_PAGE=PAGE
-MERGE:_TEXT=.text
-SECTION:INIT,d
-OPT:REF
-OPT:ICF
-IGNORE:4010,4037,4039,4065,4070,4078,4087,4089,4198,4221
-INCREMENTAL:NO
-FULLBUILD
/release
-NODEFAULTLIB
/WX
-debug:FULL
-debugtype:cv
-version:5.1
-osversion:5.1
/opt:nowin98
-STACK:0x40000,0x1000
-map
-driver
-base:0x10000
-align:0x80
-subsystem:native,5.01
-entry:DriverEntry@8
-out:objchk_wxp_x86\\i386\\USBCalc.sys
objchk_wxp_x86\\i386\\usbkbd.res
objchk_wxp_x86\\i386\\init.obj
objchk_wxp_x86\\i386\\dispatch.obj
objchk_wxp_x86\\i386\\pnp.obj
objchk_wxp_x86\\i386\\deviceio.obj
objchk_wxp_x86\\i386\\usb.obj
D:\\WINDDK\\2600~1.110\\lib\\wxp\\i386\\ntoskrnl.lib
D:\\WINDDK\\2600~1.110\\lib\\wxp\\i386\\hal.lib
D:\\WINDDK\\2600~1.110\\lib\\wxp\\i386\\wmilib.lib
D:\\WINDDK\\2600~1.110\\lib\\wxp\\i386\\hidclass.lib
D:\\WINDDK\\2600~1.110\\lib\\wxp\\i386\\usbd.lib
D:\\WINDDK\\2600~1.110\\lib\\wxp\\i386\\ntoskrnl.lib
LINK : fatal error LNK1181: cannot open input file \'objchk_wxp_x86\\i386\\init.obj\'
mapsym -o objchk_wxp_x86\\i386\\USBCalc.sym objchk_wxp_x86\\i386\\USBCalc.map
Microsoft (R) Symbol File Generator NTGroup Version 6.02
Copyright (C) Microsoft Corp 1984 - 1996.  All rights reserved.
Line number support enabled
mapsym: can\'t open input file: objchk_wxp_x86\\i386\\USBCalc.map
Skip Binplace:

Stop.
微笑面对生活每一天
zdwang
驱动牛犊
驱动牛犊
  • 注册日期2003-10-10
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-12-09 16:21
下面是SOURCE文件内容
--------------------------------------
TARGETNAME=USBCalc
TARGETTYPE=DRIVER

DDKROOT=$(_NTDRIVE)$(_NTROOT)

C_DEFINES= $(C_DEFINES) -DWMI_SUPPORT -DUSB2

TARGETPATH=obj

INCLUDES=$(DDKROOT)\\inc\\ddk\\wdm\\wxpinc;    
 


USE_MAPSYM=1

TARGETLIBS=$(DDK_LIB_PATH)\\hidclass.lib \\
           $(DDK_LIB_PATH)\\usbd.lib \\
  $(DDK_LIB_PATH)\\ntoskrnl.lib

MSC_WARNING_LEVEL=/W3 /WX

SOURCES= Init.cpp \\
Dispatch.cpp \\
Pnp.cpp \\
DeviceIo.cpp \\
Usb.cpp \\
UsbKbd.rc

NTTARGETFILES=PostBuildSteps
微笑面对生活每一天
zdwang
驱动牛犊
驱动牛犊
  • 注册日期2003-10-10
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2003-12-17 13:33
谢谢各位参与,我的问题已经解决.

主要要修改INCLUDE.

//----OLD HEAD FILE-----------
#include \"wdm.h\"
#include \"usb100.h\"
#include \"usbdi.h\"
#include \"usbdlib.h\"

//-----NEW HEAD FILE----------
#include <wdm.h>
#include <wmilib.h>   //add
#include <wmistr.h>   //add
#include <usb100.h>
#include <usbdi.h>
#include <usblib.h>


微笑面对生活每一天
zbcxw
驱动牛犊
驱动牛犊
  • 注册日期2003-02-06
  • 最后登录2005-10-05
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2004-11-17 22:29
谢谢老大,时隔一年,小弟遇上了相同问题,老兄让我少走了许多弯路,在此作揖、鞠躬!!哈哈

[编辑 -  11/17/04 by  zbcxw]

[编辑 -  11/17/04 by  zbcxw]
游客

返回顶部