badboy210 发表于 2010-7-23 16:18:00

关于MmCopyVirtualMemory在驱动中如何使用的问题

本帖最后由 badboy210 于 2010-7-23 20:06 编辑

MmCopyVirtualMemory在驱动中声明后使用,出现编译错误:
LNK2019: unresolved external symbol _MmCopyVirtualMemory@28 referenced in function xxxxx


请教如何使用该函数?该函数存在于哪个lib?

atkdef 发表于 2010-7-23 16:18:01

声明是一回事,是让编译器知道有这样一个函数,
此时需要用到的是c文件以及h文件,
在编译(不是连接)时不会出错。

在编译完毕后,连接时需要处理相关API,
这时才开始读lib文件。
虽然声明为API,
但编译器发现lib文件中无相关项目,
就会报 不能处理导出函数 。

顺带说句,
这问题貌似在0GINR某群见过啊。。。
莫非是群内人?

zzage 发表于 2010-7-23 17:15:57

lz理解错了吧?是导出函数,声明下就可以直接用!
未导出函数,你要自己去找他的函数地址后才可以调用....

badboy210 发表于 2010-7-23 20:00:46

回复 2# zzage


    我理解错了。认错。

现在想问的就是:为什么我声明了MmCopyVirtualMemory,会出error LNK2019: unresolved external symbol _MmCopyVirtualMemory的错误?
是不是我没联结相关的lib?MmCopyVirtualMemory在哪个lib里?

badboy210 发表于 2010-7-24 22:23:44

直接找地址用吧...哎

zzzevazzz 发表于 2010-7-30 15:32:14

MmCopyVirtualMemory从Vista之后才被ntoskrnl导出。

lostkeyboard 发表于 2010-8-2 07:28:35

你重新申明下函数原型 试试
页: [1]
查看完整版本: 关于MmCopyVirtualMemory在驱动中如何使用的问题