xiaoks46
驱动牛犊
驱动牛犊
  • 注册日期2007-05-18
  • 最后登录2011-06-22
  • 粉丝0
  • 关注0
  • 积分501分
  • 威望170点
  • 贡献值0点
  • 好评度49点
  • 原创分0分
  • 专家分0分
阅读:1398回复:4

莫名其妙的报错,求解

楼主#
更多 发布于:2007-09-23 17:16
部分代码如下:
int PacketSize;
PUCHAR pPacketContent;
PUCHAR pBuf;
UINT BufLength;

NdisQueryPacket(MyPacket,NULL,NULL,NULL,&PacketSize);
NdisAllocateMemory(&pPacketContent,2000,0,HighestAcceptableMax);
NdisZeroMemory(pPacketContent, 2000);
NdisQueryBufferSafe(MyPacket->Private.Head, &pBuf, &BufLength, 32);
NdisMoveMemory(pPacketContent, pBuf, BufLength);

报错为:
myioctl.cpp(37) : error C2440: 'initializing' : cannot convert from 'int *' to 'unsigned int *'
myioctl.cpp(38) : error C2664: 'NdisAllocateMemory' : cannot convert parameter 1 from 'unsigned char ** ' to 'void ** '
myioctl.cpp(40) : error C2664: 'NdisQueryBufferSafe' : cannot convert parameter 2 from 'unsigned char ** ' to 'void ** '
myioctl.cpp(51) : error C2664: 'NdisQueryBufferSafe' : cannot convert parameter 2 from 'unsigned char ** ' to 'void ** '

很奇怪啊,在另一个程序里都可以正常通过的,为什么在这里就不行了呢?真是奇怪,请大侠指点
xiaoks46
驱动牛犊
驱动牛犊
  • 注册日期2007-05-18
  • 最后登录2011-06-22
  • 粉丝0
  • 关注0
  • 积分501分
  • 威望170点
  • 贡献值0点
  • 好评度49点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-09-23 21:22
自己顶起
jwc19790313
驱动牛犊
驱动牛犊
  • 注册日期2007-09-21
  • 最后登录2009-09-28
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望9点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-09-24 11:00
类型不匹配,强制转换就可以了
xiaoks46
驱动牛犊
驱动牛犊
  • 注册日期2007-05-18
  • 最后登录2011-06-22
  • 粉丝0
  • 关注0
  • 积分501分
  • 威望170点
  • 贡献值0点
  • 好评度49点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-09-24 11:11
不可能啊
在另外一个程序里是可以正常通过的啊
wnl0008
驱动牛犊
驱动牛犊
  • 注册日期2007-06-10
  • 最后登录2016-01-09
  • 粉丝1
  • 关注0
  • 积分2分
  • 威望33点
  • 贡献值0点
  • 好评度31点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-09-25 15:58
定义的时候定义为PVOID,用的时候强制转化过来
游客

返回顶部