Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/125.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ PE导出表中不是函数的条目_C++_Debugging_Ms Access_Portable Executable_Pe Exports - Fatal编程技术网

C++ PE导出表中不是函数的条目

C++ PE导出表中不是函数的条目,c++,debugging,ms-access,portable-executable,pe-exports,C++,Debugging,Ms Access,Portable Executable,Pe Exports,我看过一个特定DLL的导出表,Iv'e在表中看到了一些奇怪的条目,所以我试图在pecoff规范中找到这个问题的答案,但没有找到,我希望有人可能有一个 我在某个DLL(Qt5Core.DLL)上运行了一个dumpbin,发现exports表中有不是函数的条目->有一些条目的地址指向.data节和.rdata节。。。 例如: 常量QAbstractState::`vftable'67366E0C 1470 QMetaObject常量QEventTransition::staticMetaObject

我看过一个特定DLL的导出表,Iv'e在表中看到了一些奇怪的条目,所以我试图在pecoff规范中找到这个问题的答案,但没有找到,我希望有人可能有一个

我在某个DLL(Qt5Core.DLL)上运行了一个dumpbin,发现exports表中有不是函数的条目->有一些条目的地址指向.data节和.rdata节。。。 例如:

常量QAbstractState::`vftable'67366E0C 1470 QMetaObject常量QEventTransition::staticMetaObject 673C15A8 6160 QCoreApplication*QCoreApplication::self 6746180C 5504

这好像是一些C++变量,我想知道它们为什么在导出表中?


谢谢

导出条目不必是函数。 您可以查看我的stackoverflow线程:

结论很清楚,数据也可以从PE文件导出。 没有完美的方法来区分两者,但是一些启发式和运行时操作可以帮助您解决这个问题。
有关更多详细信息,请参阅我的上述帖子(同时阅读评论)。

NumberOfFunctions 此模块导出的函数/符号总数

NumberOfNames 按名称导出的函数/符号数。该值不是模块中所有功能/符号的数量。对于该数字,您需要检查NumberOfFunctions。此值可以是0。在这种情况下,模块只能按序号导出。如果在第一种情况下没有要导出的函数/符号,则数据目录中导出表的RVA将为0

从上面我们可以得出结论,序号表只列出了实际具有名称的导出的数量


来源:

导出数据是受支持的方案。在这种情况下,没有什么特别的。