如何实现调用时DLL无需调用未导出函数数

从Linux内核的2.6某个版本开始内核引叺了导出符号的机制。只有在内核中使用EXPORT_SYMBOL或EXPORT_SYMBOL_GPL导出的符号才能在内核模块中直接使用然而,内核并没有导出所有的符号当我们写驱动时,如果想调用一个并未导出的函数时我们可以使用如下办法:

以get_request函数为例,该函数原型为:

很显然内核并未导出该函数,当我想在我們的驱动模块中使用该函数时我们可以采用如下做法:

//我们定义了一个名为Get_request的函数类型 //通过kallsyms_lookup_name找出我们想调用函数的地址,并赋给我们定義好的函数指针 /*现在我们就能在自己的模块中调用get_request函数了,我们只需要使用定义好的函数指针

};
这个类的头文件有

如何通过loadlibrary顯示使用这个类呢:

看资料有增加一个调用未导出函数数


}通过这个调用未导出函数数,创建一个类对象并返回对象指针。
但是怎么调鼡这个对象的方法呢?

//下面这里就有问题了

请问怎么才能正确显式使用导出类

关于Cadence公司 Orcad Allegro Sigrity等软件资源的下载、破解及其最新更新围绕Cadence相关周边插件、Skill、第三方辅助软件的集合。会持续维护更新谢谢关注。

我要回帖

更多关于 调用未导出函数 的文章

 

随机推荐