首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Minifilter中将PUCHAR转换为PWCHAR

在Minifilter中将PUCHAR转换为PWCHAR
EN

Stack Overflow用户
提问于 2021-03-07 16:12:11
回答 1查看 66关注 0票数 0

在我使用迷你过滤器之前,我将PUCHAR改为wchar_t *,然后使用GetWC将其改为char*,如下所示:

代码语言:javascript
运行
复制
wchar_t* GetWC(const char* c)
{
    long cSize = strlen(c) + 1;
    wchar_t* wc = ExAllocatePool(POOL_FLAG_NON_PAGED, cSize);
    if (!wc)
    {
        return NULL;
    }
    mbstowcs(wc, c, cSize);
    return wc;
}
wchar_t* pathwchart = GetWC((char*)ntpath);

但是现在我使用Minifilter,当我在Minifilter的CallBacks中使用ExAllocatePool时,它会在蓝屏上返回一个SYSTEM_SERVICE_EXCEPTION 0X3B错误,那么我如何在Minifilter中将PUCHAR转换为PWCHAR。

EN

回答 1

Stack Overflow用户

发布于 2021-03-07 17:48:39

代码语言:javascript
运行
复制
wchar_t* GetWC(const char* c) {
    long cSize = strlen(c) + 1;
    wchar_t* wc = ExAllocatePool2(POOL_FLAG_PAGED, cSize,"TAGHERE");
    if (!wc)
    {
        return NULL;
    }
    mbstowcs(wc, c, cSize);
    return wc; }

只需将页面更改为ExAllocatePool2和ExAllocatePool标志,即可解决此问题

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66514446

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档