阅读:1360回复:1
请问:要将PCWSTR复制一个NonPagedPool的内存块用那个函数最好,谢谢
定义了一个结构:
typedef struct _message { PWSTR name; BOOLEAN send; ULONG size; }Message,*PMessage; 驱动运行在大于passive级,所以用的内存是NonPagedPool,得到name后我想写入这个内存代码如下: PVOID Usermessage ; Usermessage = ExAllocatePoolWithTag(NonPagedPool, sizeof(Message),'MpaM'); wcscpy(((PMessage) UserMessage)->name,temName);//temName是PWSTR变量 程序运行到这里死机,请问我该怎么办? |
|
沙发#
发布于:2008-12-22 18:08
wcscpy(((PMessage) UserMessage)->name,temName);//temName是PWSTR变量
typedef struct _message { PWSTR name; BOOLEAN send; ULONG size; }Message,*PMessage; 中的 PWSTR name; 指向的内存区域 你没有申请哦 你ExAllocatePoolWithTag的只是 Message这个结构的大小 name这个指针并没有指向任何有效的内存区域,你copy的时候 自然会挂了 不管是 wcscpy 还是 memcpy 或者 Rtlcopymemory |
|
|