当前位置: 首页 > news >正文

新建菜单项的创建之CmpGetValueListFromCache函数分析


第一部分:
PCELL_DATA
CmpGetValueListFromCache(
    IN PHHIVE               Hive,
    IN PCACHED_CHILD_LIST   ChildList,
    OUT BOOLEAN             *IndexCached,
    OUT PHCELL_INDEX        ValueListToRelease
)

0: kd> dv

         KeyControlBlock = 0xe115f5b0
                   Index = 2
KeyValueInformationClass = KeyValueFullInformation (0n1)
     KeyValueInformation = 0x00fad9bc

               ChildList = 0xe119a7c4


0: kd> dv
         KeyControlBlock = 0xe115f5b0
                   Index = 2
KeyValueInformationClass = KeyValueFullInformation (0n1)


0: kd> dx -r1 ((ntkrnlmp!_CM_KEY_CONTROL_BLOCK *)0xe115f5b0)
((ntkrnlmp!_CM_KEY_CONTROL_BLOCK *)0xe115f5b0)                 : 0xe115f5b0 [Type: _CM_KEY_CONTROL_BLOCK *]

    [+0x024] ValueCache       [Type: _CACHED_CHILD_LIST]


0: kd> dx -r1 (*((ntkrnlmp!_CACHED_CHILD_LIST *)0xe115f5d4))
(*((ntkrnlmp!_CACHED_CHILD_LIST *)0xe115f5d4))                 [Type: _CACHED_CHILD_LIST]
    [+0x000] Count            : 0x8 [Type: unsigned long]
    [+0x004] ValueList        : 0xe119a7c1 [Type: unsigned long]
    [+0x004] RealKcb          : 0xe119a7c1 [Type: _CM_KEY_CONTROL_BLOCK *]


参考头文件:CMP_GET_CACHED_CELLDATA    cmdata.h (base\ntos\inc)    

#define CMP_GET_CACHED_CELLDATA(Cell) (&(((PCM_CACHED_VALUE_INDEX)(((ULONG_PTR) (Cell)) & ~CMP_CELL_CACHED_MASK))->Data.CellData))

0: kd> dt CM_CACHED_VALUE_INDEX 0xe119a7c0
nt!CM_CACHED_VALUE_INDEX
   +0x000 CellIndex        : 0x78420
   +0x004 Data             : __unnamed
0: kd> dx -id 0,0,89589d88 -r1 (*((ntkrnlmp!__unnamed *)0xe119a7c4))
(*((ntkrnlmp!__unnamed *)0xe119a7c4))                 [Type: __unnamed]
    [+0x000] CellData         [Type: _CELL_DATA]
    [+0x000] List             [Type: unsigned long [1]]
0: kd> dx -id 0,0,89589d88 -r1 (*((ntkrnlmp!_CELL_DATA *)0xe119a7c4))
(*((ntkrnlmp!_CELL_DATA *)0xe119a7c4))                 [Type: _CELL_DATA]
    [+0x000] u                [Type: _u]
0: kd> dx -id 0,0,89589d88 -r1 (*((ntkrnlmp!_u *)0xe119a7c4))
(*((ntkrnlmp!_u *)0xe119a7c4))                 [Type: _u]
    [+0x000] KeyNode          [Type: _CM_KEY_NODE]
    [+0x000] KeyValue         [Type: _CM_KEY_VALUE]
    [+0x000] KeySecurity      [Type: _CM_KEY_SECURITY]
    [+0x000] KeyIndex         [Type: _CM_KEY_INDEX]
    [+0x000] ValueData        [Type: _CM_BIG_DATA]
    [+0x000] KeyList          [Type: unsigned long [1]]
    [+0x000] KeyString        [Type: unsigned short [1]]

第二部分:
0: kd> dt CELL_DATA 0xe119a7c4
nt!CELL_DATA
   +0x000 u                : _u
0: kd> dx -id 0,0,89589d88 -r1 (*((ntkrnlmp!_u *)0xe119a7c4))
(*((ntkrnlmp!_u *)0xe119a7c4))                 [Type: _u]
    [+0x000] KeyNode          [Type: _CM_KEY_NODE]
    [+0x000] KeyValue         [Type: _CM_KEY_VALUE]
    [+0x000] KeySecurity      [Type: _CM_KEY_SECURITY]
    [+0x000] KeyIndex         [Type: _CM_KEY_INDEX]
    [+0x000] ValueData        [Type: _CM_BIG_DATA]
    [+0x000] KeyList          [Type: unsigned long [1]]
    [+0x000] KeyString        [Type: unsigned short [1]]
0: kd> dd 0xe119a7c4                    8个键值
e119a7c4  e19d0809 e19efc39 e11657a1 e116ace9
e119a7d4  e16c5b21 e19a8e81 e17a4711 e10ae231


0: kd> db e10ae259
e10ae259  00 24 00 76 6b 10 00 a0-03 00 00 20 a0 05 00 03  .$.vk...... ....
e10ae269  00 00 00 01 00 b2 b2 57-6f 72 64 70 61 64 20 44  .......Wordpad D
e10ae279  6f 63 75 6d 65 6e 74 06-04 02 00 4f 62 53 71 a9  ocument....ObSq.
e10ae289  e5 87 e1 79 68 98 e1 02-04 0f 0c 43 4d 56 49 70  ...yh......CMVIp
e10ae299  9b 06 00 91 22 88 e1 79-82 73 e1 51 ee 7b e1 a1  ...."..y.s.Q.{..
e10ae2a9  5e 9a e1 a9 c0 06 e1 b9-e5 87 e1 f9 7a 41 e1 81  ^...........zA..
e10ae2b9  67 83 e1 a1 13 79 e1 b9-bb 96 e1 79 c1 06 e1 a9  g....y.....y....
e10ae2c9  c8 77 e1 11 c5 2b e1 69-13 79 e1 b1 2e 88 e1 a1  .w...+.i.y......
0: kd> db e19efc39
e19efc39  00 24 00 76 6b 0c 00 a0-03 00 00 98 a7 05 00 03  .$.vk...........
e19efc49  00 00 00 01 00 b2 b2 42-69 74 6d 61 70 20 49 6d  .......Bitmap Im
e19efc59  61 67 65 b2 b2 b2 b2 00-00 00 00 00 00 00 00 00  age.............
e19efc69  00 00 00 00 00 42 00 69-00 74 00 6d 00 61 00 70  .....B.i.t.m.a.p
e19efc79  00 20 00 49 00 6d 00 61-00 67 00 65 00 00 00 00  . .I.m.a.g.e....
e19efc89  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
e19efc99  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
e19efca9  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
0: kd> db e19d0809
e19d0809  00 24 00 76 6b 09 00 a0-03 00 00 88 9b 05 00 03  .$.vk...........
e19d0819  00 00 00 01 00 b2 b2 42-72 69 65 66 63 61 73 65  .......Briefcase
e19d0829  b2 b2 b2 b2 b2 b2 b2 00-00 00 00 00 00 00 00 00  ................
e19d0839  00 00 00 00 00 42 00 72-00 69 00 65 00 66 00 63  .....B.r.i.e.f.c
e19d0849  00 61 00 73 00 65 00 00-00 00 00 00 00 00 00 00  .a.s.e..........
e19d0859  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
e19d0869  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
e19d0879  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
0: kd> db e116ace9
e116ace9  00 2c 00 76 6b 12 00 a0-03 00 00 c8 a3 05 00 03  .,.vk...........
e116acf9  00 00 00 01 00 b2 b2 52-69 63 68 20 54 65 78 74  .......Rich Text
e116ad09  20 44 6f 63 75 6d 65 6e-74 b2 b2 b2 b2 b2 b2 07   Document.......
e116ad19  06 12 0c 47 6c 61 40 78-00 00 00 a8 f2 82 e1 10  ...Gla@x........
e116ad29  bc 96 e1 70 7c 09 e1 8e-02 10 71 00 00 00 00 00  ...p|.....q.....
e116ad39  00 00 80 00 00 00 00 07-00 00 00 00 00 00 00 00  ................
e116ad49  00 00 00 14 00 00 80 25-03 00 00 58 0e 90 00 00  .......%...X....
e116ad59  00 00 00 ff ff ff 00 00-00 00 00 00 00 00 00 01  ................
0: kd> db e16c5b21
e16c5b21  00 24 00 76 6b 0d 00 a0-03 00 00 20 b0 05 00 03  .$.vk...... ....
e16c5b31  00 00 00 01 00 b2 b2 54-65 78 74 20 44 6f 63 75  .......Text Docu
e16c5b41  6d 65 6e 74 b2 b2 b2 06-08 02 00 43 4d 4e e2 a1  ment.......CMN..
e16c5b51  64 18 e1 71 4d 16 e1 02-08 06 0c 43 4d 56 61 00  d..qM......CMVa.
e16c5b61  00 24 00 76 6b 0c 00 1e-00 00 00 58 33 00 00 01  .$.vk......X3...
e16c5b71  00 00 00 01 00 b2 b2 43-6f 6e 74 65 6e 74 20 54  .......Content T
e16c5b81  79 70 65 b2 b2 b2 b2 06-08 07 1c 43 4d 70 62 01  ype........CMpb.
e16c5b91  00 00 00 34 8f 49 e1 54-4e 9c e1 74 43 86 e1 7c  ...4.I.TN..tC..|
0: kd> db e19a8e81
e19a8e81  00 34 00 76 6b 1a 00 a0-03 00 00 50 a9 06 00 03  .4.vk......P....
e19a8e91  00 00 00 01 00 b2 b2 43-6f 6d 70 72 65 73 73 65  .......Compresse
e19a8ea1  64 20 28 7a 69 70 70 65-64 29 20 46 6f 6c 64 65  d (zipped) Folde
e19a8eb1  72 b2 b2 b2 b2 b2 b2 08-04 08 04 43 4d 4e e2 20  r..........CMN.
e19a8ec1  62 7b e1 3f 9a ce 0f 84-41 61 e1 26 00 7b 36 35  b{.?....Aa.&.{65
e19a8ed1  34 33 39 43 32 30 2d 36-30 34 46 2d 34 39 43 41  439C20-604F-49CA
e19a8ee1  2d 41 41 38 32 2d 44 43-30 31 41 31 30 41 46 31  -AA82-DC01A10AF1
e19a8ef1  37 31 7d 15 00 00 00 08-04 01 00 4f 62 4e 6d 01  71}........ObNm.
0: kd> db e17a4711
e17a4711  00 24 00 76 6b 0a 00 18-00 00 00 f8 ac 05 00 03  .$.vk...........
e17a4721  00 00 00 01 00 b2 b2 7e-72 65 73 65 72 76 65 64  .......~reserved
e17a4731  7e b2 b2 b2 b2 b2 b2 18-00 00 00 01 00 01 00 e9  ~...............
e17a4741  07 01 00 03 00 0f 00 0d-00 28 00 0a 00 0d 03 09  .........(......
e17a4751  06 01 00 4e 74 66 63 01-06 05 0c 43 4d 56 61 00  ...Ntfc....CMVa.
e17a4761  00 1c 00 76 6b 07 00 18-00 00 00 80 68 01 00 01  ...vk.......h...
e17a4771  00 00 00 01 00 b2 b2 49-6e 66 50 61 74 68 b2 05  .......InfPath..
e17a4781  06 06 0c 43 4d 56 61 00-00 24 00 76 6b 0e 00 08  ...CMVa..$.vk...
0: kd> db e10ae231
e10ae231  00 1c 00 76 6b 08 00 04-00 00 80 09 04 00 00 04  ...vk...........
e10ae241  00 00 00 01 00 b2 b2 4c-61 6e 67 75 61 67 65 05  .......Language.
e10ae251  04 06 0c 43 4d 56 61 00-00 24 00 76 6b 10 00 a0  ...CMVa..$.vk...
e10ae261  03 00 00 20 a0 05 00 03-00 00 00 01 00 b2 b2 57  ... ...........W
e10ae271  6f 72 64 70 61 64 20 44-6f 63 75 6d 65 6e 74 06  ordpad Document.
e10ae281  04 02 00 4f 62 53 71 a9-e5 87 e1 79 68 98 e1 02  ...ObSq....yh...
e10ae291  04 0f 0c 43 4d 56 49 70-9b 06 00 91 22 88 e1 79  ...CMVIp...."..y
e10ae2a1  82 73 e1 51 ee 7b e1 a1-5e 9a e1 a9 c0 06 e1 b9  .s.Q.{..^.......

相关文章:

新建菜单项的创建之CmpGetValueListFromCache函数分析

第一部分: PCELL_DATA CmpGetValueListFromCache( IN PHHIVE Hive, IN PCACHED_CHILD_LIST ChildList, OUT BOOLEAN *IndexCached, OUT PHCELL_INDEX ValueListToRelease ) 0: kd> dv KeyControlBlock 0xe1…...

【Word2Vec】Skip-gram 的直观理解(深入浅出)

01 什么是skip-gram 一句话来说就是,给定中心词,然后预测其周围的词: 02 模型结构 对于skip-gram来说,输入是一个[1 x V]维的ont-hot向量,其中V为词表大小,值为1的那一项就表示我们的中心词。经过一个[V x…...

在MacOS上打造本地部署的大模型知识库(一)

一、在MacOS上安装Ollama docker run -d -p 3000:8080 --add-hosthost.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main 最后停掉Docker的ollama,就能在webui中加载llama模…...

(21)从strerror到strtok:解码C语言字符函数的“生存指南2”

❤个人主页:折枝寄北的博客 ❤专栏位置:简单入手C语言专栏 目录 前言1. 错误信息报告1.1 strerror 2. 字符操作2.1 字符分类函数2.2 字符转换函数 3. 内存操作函数3.1 memcpy3.2 memmove3.2memset3.3 memcmp 感谢您的阅读 前言 当你写下strcpy(dest, s…...

DeepSeek推出DeepEP:首个开源EP通信库,让MoE模型训练与推理起飞!

今天,DeepSeek 在继 FlashMLA 之后,推出了第二个 OpenSourceWeek 开源项目——DeepEP。 作为首个专为MoE(Mixture-of-Experts)训练与推理设计的开源 EP 通信库,DeepEP 在EP(Expert Parallelism&#xff09…...

1.2 Kaggle大白话:Eedi竞赛Transformer框架解决方案02-GPT_4o生成训练集缺失数据

目录 0. 本栏目竞赛汇总表1. 本文主旨2. AI工程架构3. 数据预处理模块3.1 配置数据路径和处理参数3.2 配置API参数3.3 配置输出路径 4. AI并行处理模块4.1 定义LLM客户端类4.2 定义数据处理函数4.3 定义JSON保存函数4.4 定义数据分片函数4.5 定义分片处理函数4.5 定义文件名排序…...

数据结构-顺序表专题

大家好!这里是摆子,今天给大家带来的是C语言数据结构开端-顺序表专题,主要介绍了数据结构和动态顺序表的实现,快来看看吧!记得一键三连哦! 1.数据结构的概念 1.1什么是数据结构? 数据结构是计…...

docker和containerd从TLS harbor拉取镜像

私有镜像仓库配置了自签名证书,https访问,好处是不需要处理免费证书和付费证书带来的证书文件变更,证书文件变更后需要重启服务,自签名证书需要将一套客户端证书存放在/etc/docker/cert.d目录下,或者/etc/containerd/c…...

kafka-关于ISR-概述

一. 什么是ISR ? Kafka 中通常每个分区都有多个副本,其中一个副本被选举为 Leader,其他副本为 Follower。ISR 是指与 Leader 副本保持同步的 Follower 副本集合。ISR 机制的核心是确保数据在多个副本之间的一致性和可靠性,同时在 …...

el-input实现金额输入

需求&#xff1a;想要实现一个输入金额的el-input&#xff0c;限制只能输入数字和一个小数点。失焦数字转千分位&#xff0c;聚焦转为数字&#xff0c;超过最大值&#xff0c;红字提示 效果图 失焦 聚焦 报错效果 // 组件limitDialog <template><el-dialog:visible.s…...

C++11智能指针

一、指针管理的困境 资源释放了&#xff0c;但指针没有置空&#xff08;野指针、指针悬挂、踩内存&#xff09; 没有释放资源&#xff0c;产生内存泄漏问题&#xff1b;重复释放资源&#xff0c;引发coredump 二、智能指针...

安装Git(小白也会装)

一、官网下载&#xff1a;Git 1.依次点击&#xff08;红框&#xff09; 不要安装在C盘了&#xff0c;要炸了&#xff01;&#xff01;&#xff01; 后面都 使用默认就好了&#xff0c;不用改&#xff0c;直接Next&#xff01; 直到这里&#xff0c;选第一个 这两种选项的区别如…...

驭势科技9周年:怀揣理想,踏浪前行

2025年的2月&#xff0c;驭势科技迎来9岁生日。位于国内外不同工作地的Uiseeker齐聚线上线下&#xff0c;共同庆祝驭势走过的璀璨九年。 驭势科技联合创始人、董事长兼CEO吴甘沙现场分享了驭势9年的奔赴之路&#xff0c;每一段故事都包含着坚持与拼搏。 左右滑动查看更多 Part.…...

一款在手机上制作电子表格

今天给大家分享一款在手机上制作电子表格的&#xff0c;免费好用的Exce1表格软件&#xff0c;让工作变得更加简单。 1 软件介绍 Exce1是一款手机制作表格的办公软件&#xff0c;您可以使用手机exce1在线制作表格、工资表、编辑xlsx和xls表格文件等&#xff0c;还可以学习使用…...

Python解决“比赛配对”问题

Python解决“比赛配对”问题 问题描述测试样例解决思路代码 问题描述 小R正在组织一个比赛&#xff0c;比赛中有 n 支队伍参赛。比赛遵循以下独特的赛制&#xff1a; 如果当前队伍数为 偶数&#xff0c;那么每支队伍都会与另一支队伍配对。总共进行 n / 2 场比赛&#xff0c;…...

【AI论文】RAD: 通过大规模基于3D图形仿真器的强化学习训练端到端驾驶策略

摘要&#xff1a;现有的端到端自动驾驶&#xff08;AD&#xff09;算法通常遵循模仿学习&#xff08;IL&#xff09;范式&#xff0c;但面临着因果混淆和开环差距等挑战。在本研究中&#xff0c;我们建立了一种基于3D图形仿真器&#xff08;3DGS&#xff09;的闭环强化学习&…...

Web开发:ORM框架之使用Freesql的导航属性

一、什么时候用导航属性 看数据库表的对应关系&#xff0c;一对多的时候用比较好&#xff0c;不用多写一个联表实体&#xff0c;而且查询高效 二、为实体配置导航属性 1.给关系是一的父表实体加上&#xff1a; [FreeSql.DataAnnotations.Navigate(nameof(子表.子表关联字段))]…...

【docker】namespace底层机制

Linux 的 Namespace 机制是实现容器化&#xff08;如 Docker、LXC 等&#xff09;的核心技术之一&#xff0c;它通过隔离系统资源&#xff08;如进程、网络、文件系统等&#xff09;为进程提供独立的运行环境。其底层机制涉及内核数据结构、系统调用和进程管理。以下是其核心实…...

【每天认识一个漏洞】url重定向

&#x1f31d;博客主页&#xff1a;菜鸟小羊 &#x1f496;专栏&#xff1a;Linux探索之旅 | 网络安全的神秘世界 | 专接本 | 每天学会一个渗透测试工具 常见应用场景 主要是业务逻辑中需要进行跳转的地方。比如登录处、注册处、访问用户信息、订单信息、加入购物车、分享、收…...

端口映射/内网穿透方式及问题解决:warning: remote port forwarding failed for listen port

文章目录 需求&#xff1a;A机器是内网机器&#xff0c;B机器是公网服务器&#xff0c;想要从公网&#xff0c;访问A机器的端口方式&#xff1a;端口映射&#xff0c;内网穿透&#xff0c;使用ssh打洞端口&#xff1a;遇到问题&#xff1a;命令执行成功&#xff0c;但是端口转发…...

Linux链表操作全解析

Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表&#xff1f;1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...

label-studio的使用教程(导入本地路径)

文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端

&#x1f31f; 什么是 MCP&#xff1f; 模型控制协议 (MCP) 是一种创新的协议&#xff0c;旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议&#xff0c;它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...

Java - Mysql数据类型对应

Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成&#xff0c;核心是利用 HTTP 协议的 Range 请求头指定下载范围&#xff1a; 实现原理 Range 请求头&#xff1a;向服务器请求文件的特定字节范围&#xff08;如 Range: bytes1024-&#xff09; 本地文件记录&#xff1a;保存已…...

浅谈不同二分算法的查找情况

二分算法原理比较简单&#xff0c;但是实际的算法模板却有很多&#xff0c;这一切都源于二分查找问题中的复杂情况和二分算法的边界处理&#xff0c;以下是博主对一些二分算法查找的情况分析。 需要说明的是&#xff0c;以下二分算法都是基于有序序列为升序有序的情况&#xf…...

精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南

精益数据分析&#xff08;97/126&#xff09;&#xff1a;邮件营销与用户参与度的关键指标优化指南 在数字化营销时代&#xff0c;邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天&#xff0c;我们将深入解析邮件打开率、网站可用性、页面参与时…...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 在 GPU 上对图像执行 均值漂移滤波&#xff08;Mean Shift Filtering&#xff09;&#xff0c;用于图像分割或平滑处理。 该函数将输入图像中的…...

安卓基础(aar)

重新设置java21的环境&#xff0c;临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的&#xff1a; MyApp/ ├── app/ …...

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要&#xff1a; 近期&#xff0c;在使用较新版本的OpenSSH客户端连接老旧SSH服务器时&#xff0c;会遇到 "no matching key exchange method found"​, "n…...