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

Win2000 Driver 移植到WinXP错误,请高人指点!

楼主#
更多 发布于:2003-11-26 10:20
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

----------------------
请问我需要修改什么吗?
微笑面对生活每一天
seaquester
驱动大牛
驱动大牛
  • 注册日期2002-05-22
  • 最后登录2016-06-16
  • 粉丝0
  • 关注0
  • 积分500分
  • 威望115点
  • 贡献值0点
  • 好评度107点
  • 原创分0分
  • 专家分52分
沙发#
发布于:2003-11-26 17:59
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

----------------------
请问我需要修改什么吗?


这个error好像是因为你的头文件中有这样的结构
struct _XXstruce
{
  ......

  BYTE pBuffer[0];  //Array 长度为0
}
这在C里面是一种技巧,但是到了C++里面则是一种错误。
你的源文件都是用的.cpp吧, 使用.c扩展名不会出这个错误。
好像还可以修改缺省的 Warning Level 。没试过,仅供参考。

八风舞遥翩,九野弄清音。 鸣高常向月,善舞不迎人。
MacWin
驱动中牛
驱动中牛
  • 注册日期2002-12-16
  • 最后登录2009-05-27
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望44点
  • 贡献值0点
  • 好评度29点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-11-28 11:19
同意楼上
Chen
游客

返回顶部