【发布时间】:2020-11-28 13:02:16
【问题描述】:
PWORD exported_ordinalsTable = (PWORD)((ULONG64)kernel_module_base + p_export_dir->AddressOfNameOrdinals);
PDWORD exported_ordinalsTable = (PDWORD)((ULONG64)kernel_module_base + p_export_dir->AddressOfNameOrdinals);
我试图从正在运行的 .sys 内核驱动程序中获取导出的函数,当我试图弄清楚为什么它不能正常运行时,我发现在 ms 文档中它说这应该是一个 PWORD 指针指向一个单词数组现在的问题是使用PWORD和PDWORD有什么区别是因为当使用指向数组的指针时它们应该是相同的类型,尽管我检查了两个指针的大小x64 位环境,它们都是字节大小。为什么我不能使用PDWORD derf 指针并将其转换为 WORD 值并从中获取数据?
【问题讨论】:
-
它们必须是相同的类型,这样才能知道下一个在哪里
标签: c windows kernel portable-executable