本文共计411个字,预计阅读时长1.5分钟。
应用和驱动通信遇到了一个问题,数据被截断。
应用: 我建立了一个结构体:
typedef struct {
······
ULONG64 T;
······
}Test, * PTest;
void test(){
Test t;
t.T=0x7FFF11111111
}
······
然后通过CreateFile成功打开了设备,使用DeviceIoControl将此结构体给到驱动
驱动:
······
case IOCTL_READ: {
PTest Input = (PTest)Buffer;
KdPrint(("值:%x\n", Input->T));
······
break;
}
但是驱动的分发函数里取回的值为:0x11111111,但是我的结构体成员T都是ULONG64类型,为什么还是会发生截断呢?求解答
应用和驱动通信的问题