内核模块(.ko文件)移植到DLL导出符号



在从LINUX模块到WINDOWS的项目模拟中,我们需要将内核模块移植到DLL。在内核模块中,我们在函数定义后通过export_SYMBOL(函数)导出符号。在DLL中,我们可以在函数定义或def文件中通过__declspec(dllexport)导出符号。但是,如果我们通过__declspec(dllexport)导出符号,则必须在每个导出函数定义之前添加__declsspec(dllex port)。如果我们通过def文件导出符号,那么每个模块都必须维护一个def文件。这个项目大约有一百万行代码。仿真只是项目的一个工具,不能采用这两种方法进行仿真。

我们可以通过DLL中的export_SYMBOL(函数)导出符号吗?或者修改少量代码,如export_SYMBOL宏,或者自动生成def文件。

创建一个脚本,该脚本将贯穿代码,并为每个找到的EXPORT_SYMBOL(函数)将"function"添加到.def文件中。

最新更新