rtlcopymemory导致蓝屏

qq_35889047 2019-04-17 06:50:06
在minifilter通信函数里想把传过来的字符串分成两截处理,但是因为字符串本身比较大,尾部那截进行内存拷贝时一直会因为分页问题出现page_fault_in_nonpaged_area的错误,请问怎么修改好一点

NTSTATUS
MiniMessage(
__in PVOID ConnectionCookie,
__in_bcount_opt(InputBufferSize) PVOID InputBuffer,
__in ULONG InputBufferSize,
__out_bcount_part_opt(OutputBufferSize, *ReturnOutputBufferLength) PVOID OutputBuffer,
__in ULONG OutputBufferSize,
__out PULONG ReturnOutputBufferLength
)
{


PAGED_CODE();

UNREFERENCED_PARAMETER(ConnectionCookie);
UNREFERENCED_PARAMETER(OutputBufferSize);
UNREFERENCED_PARAMETER(OutputBuffer);
if ((InputBuffer != NULL) &&
(InputBufferSize >= sizeof(char)))
{
UNICODE_STRING receive;
UNICODE_STRING fuck;
KStr_Init(&head,MAX_PATH);
KStr_Init(&tail, MAX_PATH);
CHAR_TO_UNICODE_STRING((char *)InputBuffer,&receive);
RtlCopyMemory(head.Buffer,receive.Buffer,2*sizeof(WCHAR));
head.Length =2*sizeof(WCHAR);
RtlCopyMemory(tail.Buffer, receive.Buffer+2*sizeof(WCHAR),receive.Length-2*sizeof(WCHAR));
tail.Length = receive.Length - 2* sizeof(WCHAR);
}
return STATUS_SUCCESS;
}
...全文
249 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_35889047 2019-04-18
  • 打赏
  • 举报
回复
我睿智了,改好了,自己tail截取的起始地点不对真实睿智

21,597

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧