C++ VS编译二进制文件中的符号
我有以下问题: 是否可以在VisualStudio编译的C++二进制中找到符号,或者仅在PDB或.map文件中存储符号吗?如果它们可以在二进制文件中找到,那么哪些设置确定符号是否存储在那里C++ VS编译二进制文件中的符号,c++,visual-studio,binary,symbols,C++,Visual Studio,Binary,Symbols,我有以下问题: 是否可以在VisualStudio编译的C++二进制中找到符号,或者仅在PDB或.map文件中存储符号吗?如果它们可以在二进制文件中找到,那么哪些设置确定符号是否存储在那里 103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z 10C ??6?$basic_ostream@DU?$ch
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
或者换一种说法:二进制文件是否可能包含源代码的任何部分,无论是成员、函数还是其他什么
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
谢谢在构建时,您可以选择是否将调试信息嵌入库而不是pdb中-请参阅中的/Z7。因此,如果您发送.libs或.objs,这可能是一个问题。但是,当创建最终的exe/dll时,该信息将不存在-它将被放入PDB中
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
DLL导出的函数和变量将被命名,以便调用者可以找到它们
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
使用\uuuu函数\uuuu
和\uuuu文件\uuuu
宏的代码可能意味着这些值的字符串文字将在最终可执行文件中的某个位置。这适用于代码中的所有其他字符串文本-它们将在其中的某个位置
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
除此之外,在最终的dll/exe中不会有太多关于原始代码的信息。您可以在构建时选择是否将调试信息嵌入库而不是pdb中-请参阅中的/Z7。因此,如果您发送.libs或.objs,这可能是一个问题。但是,当创建最终的exe/dll时,该信息将不存在-它将被放入PDB中
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
DLL导出的函数和变量将被命名,以便调用者可以找到它们
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
使用\uuuu函数\uuuu
和\uuuu文件\uuuu
宏的代码可能意味着这些值的字符串文字将在最终可执行文件中的某个位置。这适用于代码中的所有其他字符串文本-它们将在其中的某个位置
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
除此之外,在最终的dll/exe中不会有太多关于原始代码的信息。要在以Windows COFF格式构建的dll、exe、LIB或OBJ文件中查找符号,请使用dumpbin.exe实用程序,它通常包含在SDK或WDK中,或随VC一起提供++
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
参考:
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
例如,在simple exe上使用/ALL选项运行它将在.exe中生成要从DLL解析的符号列表。在DLL上运行它将生成DLL导出的符号列表
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
MSVCP140.dll14003080导入地址表
140003AD0导入名称表
0时间日期戳
0第一个转发器引用的索引
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
VCRUNTIME140.dll140030D8导入地址表
140003B28导入名称表
0时间日期戳
0第一个转发器引用的索引
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
要在Windows COFF格式生成的DLL、EXE、LIB或OBJ文件中查找符号,请使用dumpbin.EXE实用程序,它通常包含在SDK或WDK中,或随VC一起提供++
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
参考:
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
例如,在simple exe上使用/ALL选项运行它将在.exe中生成要从DLL解析的符号列表。在DLL上运行它将生成DLL导出的符号列表
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
MSVCP140.dll14003080导入地址表
140003AD0导入名称表
0时间日期戳
0第一个转发器引用的索引
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
VCRUNTIME140.dll140030D8导入地址表
140003B28导入名称表
0时间日期戳
0第一个转发器引用的索引
103 ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
10C ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z
10D ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_N@Z
4C5 ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z
368 ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ
244 ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ
4DE ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z
4E1 ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z
2B4 ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
51F ?uncaught_exceptions@std@@YAHXZ
3E memset
8 __C_specific_handler
23 __std_terminate
E __CxxFrameHandler3
DLL将至少包含导出函数和变量的名称。DLL和EXE将包含它们希望从其他DLL解析的名称。DLL将至少包含导出函数和变量的名称。DLL和EXE将包含它们希望从其他DLL解析的名称。如果使用较旧的.def文件方法指定导出(而不是_declspec(dllexport)),则仍可以按序号与NONAME一起导出,甚至不导出名称。如果使用较旧的.def文件方法指定导出(而不是uu declspec(dllexport),您仍然可以按序号和NONAME一起导出,甚至不必导出名称。非常有用的工具,谢谢。)虽然/ALL选项只是转储和无休止的流,看起来像一个十六进制视图,左边是hexa,右边是ASCII。@ruhigbauner好吧,/HEADERS可能对您更有用。非常有用的工具,谢谢。:)虽然/ALL选项只是转储和无休止的流,看起来像一个十六进制视图,左边是hexa,右边是ASCII。@ruhigbauner好吧,/HEADERS可能更适合您