打开cmd:

cd C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin

运行vcvars32.bat?

再次输入以下命令:

dumpbin /headers D:\ap8ae8.dll

将会看到以下结果:

Microsoft (R) COFF/PE Dumper Version 10.00.40219.01 Copyright (C) Microsoft Corporation. ?All rights reserved.

Dump of file D:\ap8ae8.dll

PE signature found

File Type: DLL

FILE HEADER VALUES ? ? ? ? ? ? 8664 machine (x64) ? ? ? ? ? ? ? ?7 number of sections ? ? ? ? 5D554991 time date stamp Thu Aug 15 20:01:21 2019 ? ? ? ? ? ? ? ?0 file pointer to symbol table ? ? ? ? ? ? ? ?0 number of symbols ? ? ? ? ? ? ? F0 size of optional header ? ? ? ? ? ? 2022 characteristics ? ? ? ? ? ? ? ? ? ?Executable ? ? ? ? ? ? ? ? ? ?Application can handle large (>2GB) addresses ? ? ? ? ? ? ? ? ? ?DLL

OPTIONAL HEADER VALUES ? ? ? ? ? ? ?20B magic # (PE32+) ? ? ? ? ? ?10.00 linker version ? ? ? ? ? ?16000 size of code ? ? ? ? ? ? 5A00 size of initialized data ? ? ? ? ? ? ? ?0 size of uninitialized data ? ? ? ? ? ?15350 entry point (0000000180015350) _DllMainCRTStartup ? ? ? ? ? ? 1000 base of code ? ? ? ?180000000 image base (0000000180000000 to 0000000180037FFF) ? ? ? ? ? ? 1000 section alignment ? ? ? ? ? ? ?200 file alignment ? ? ? ? ? ? 5.02 operating system version ? ? ? ? ? ? 0.00 image version ? ? ? ? ? ? 5.02 subsystem version ? ? ? ? ? ? ? ?0 Win32 version ? ? ? ? ? ?38000 size of image ? ? ? ? ? ? ?400 size of headers ? ? ? ? ? ?289F8 checksum ? ? ? ? ? ? ? ?2 subsystem (Windows GUI) ? ? ? ? ? ? ?140 DLL characteristics ? ? ? ? ? ? ? ? ? ?Dynamic base ? ? ? ? ? ? ? ? ? ?NX compatible ? ? ? ? ? 100000 size of stack reserve ? ? ? ? ? ? 1000 size of stack commit ? ? ? ? ? 100000 size of heap reserve ? ? ? ? ? ? 1000 size of heap commit ? ? ? ? ? ? ? ?0 loader flags ? ? ? ? ? ? ? 10 number of directories ? ? ? ? ? ?1AEA0 [ ? ? ?44] RVA [size] of Export Directory ? ? ? ? ? ?1A72C [ ? ? ?64] RVA [size] of Import Directory ? ? ? ? ? ?36000 [ ? ? 1B4] RVA [size] of Resource Directory ? ? ? ? ? ?34000 [ ? ? 3C0] RVA [size] of Exception Directory ? ? ? ? ? ? ? ?0 [ ? ? ? 0] RVA [size] of Certificates Directory ? ? ? ? ? ?37000 [ ? ? 154] RVA [size] of Base Relocation Directory ? ? ? ? ? ?17260 [ ? ? ?1C] RVA [size] of Debug Directory ? ? ? ? ? ? ? ?0 [ ? ? ? 0] RVA [size] of Architecture Directory ? ? ? ? ? ? ? ?0 [ ? ? ? 0] RVA [size] of Global Pointer Directory ? ? ? ? ? ? ? ?0 [ ? ? ? 0] RVA [size] of Thread Storage Directory ? ? ? ? ? ? ? ?0 [ ? ? ? 0] RVA [size] of Load Configuration Directory ? ? ? ? ? ? ? ?0 [ ? ? ? 0] RVA [size] of Bound Import Directory ? ? ? ? ? ?17000 [ ? ? 238] RVA [size] of Import Address Table Directory ? ? ? ? ? ? ? ?0 [ ? ? ? 0] RVA [size] of Delay Import Directory ? ? ? ? ? ? ? ?0 [ ? ? ? 0] RVA [size] of COM Descriptor Directory ? ? ? ? ? ? ? ?0 [ ? ? ? 0] RVA [size] of Reserved Directory

SECTION HEADER #1 ? ?.text name ? ?15E7D virtual size ? ? 1000 virtual address (0000000180001000 to 0000000180016E7C) ? ?16000 size of raw data ? ? ?400 file pointer to raw data (00000400 to 000163FF) ? ? ? ?0 file pointer to relocation table ? ? ? ?0 file pointer to line numbers ? ? ? ?0 number of relocations ? ? ? ?0 number of line numbers 60000020 flags ? ? ? ? ?Code ? ? ? ? ?Execute Read

SECTION HEADER #2 ? .rdata name ? ? 3EE4 virtual size ? ?17000 virtual address (0000000180017000 to 000000018001AEE3) ? ? 4000 size of raw data ? ?16400 file pointer to raw data (00016400 to 0001A3FF) ? ? ? ?0 file pointer to relocation table ? ? ? ?0 file pointer to line numbers ? ? ? ?0 number of relocations ? ? ? ?0 number of line numbers 40000040 flags ? ? ? ? ?Initialized Data ? ? ? ? ?Read Only

? Debug Directories

? ? ? ? Time Type ? ? ? Size ? ? ?RVA ?Pointer ? ? -------- ------ -------- -------- -------- ? ? 5D554991 cv ? ? ? ? ? 49 0001A160 ? ?19560 ? ?Format: RSDS, {464A59BA-4E3C-4E94-9144-69E59B6AF5E1}, 1, D:\Project\vs\ap8ae8\ap8ae8\x64\Debug\ap8ae8.pdb

SECTION HEADER #3 ? ?.data name ? ?18888 virtual size ? ?1B000 virtual address (000000018001B000 to 0000000180033887) ? ? ?600 size of raw data ? ?1A400 file pointer to raw data (0001A400 to 0001A9FF) ? ? ? ?0 file pointer to relocation table ? ? ? ?0 file pointer to line numbers ? ? ? ?0 number of relocations ? ? ? ?0 number of line numbers C0000040 flags ? ? ? ? ?Initialized Data ? ? ? ? ?Read Write

SECTION HEADER #4 ? .pdata name ? ? ?3C0 virtual size ? ?34000 virtual address (0000000180034000 to 00000001800343BF) ? ? ?400 size of raw data ? ?1AA00 file pointer to raw data (0001AA00 to 0001ADFF) ? ? ? ?0 file pointer to relocation table ? ? ? ?0 file pointer to line numbers ? ? ? ?0 number of relocations ? ? ? ?0 number of line numbers 40000040 flags ? ? ? ? ?Initialized Data ? ? ? ? ?Read Only

SECTION HEADER #5 ? .trace name ? ? ?8C0 virtual size ? ?35000 virtual address (0000000180035000 to 00000001800358BF) ? ? ?A00 size of raw data ? ?1AE00 file pointer to raw data (0001AE00 to 0001B7FF) ? ? ? ?0 file pointer to relocation table ? ? ? ?0 file pointer to line numbers ? ? ? ?0 number of relocations ? ? ? ?0 number of line numbers 40000040 flags ? ? ? ? ?Initialized Data ? ? ? ? ?Read Only

SECTION HEADER #6 ? ?.rsrc name ? ? ?1B4 virtual size ? ?36000 virtual address (0000000180036000 to 00000001800361B3) ? ? ?200 size of raw data ? ?1B800 file pointer to raw data (0001B800 to 0001B9FF) ? ? ? ?0 file pointer to relocation table ? ? ? ?0 file pointer to line numbers ? ? ? ?0 number of relocations ? ? ? ?0 number of line numbers 40000040 flags ? ? ? ? ?Initialized Data ? ? ? ? ?Read Only

SECTION HEADER #7 ? .reloc name ? ? ?338 virtual size ? ?37000 virtual address (0000000180037000 to 0000000180037337) ? ? ?400 size of raw data ? ?1BA00 file pointer to raw data (0001BA00 to 0001BDFF) ? ? ? ?0 file pointer to relocation table ? ? ? ?0 file pointer to line numbers ? ? ? ?0 number of relocations ? ? ? ?0 number of line numbers 42000040 flags ? ? ? ? ?Initialized Data ? ? ? ? ?Discardable ? ? ? ? ?Read Only

? Summary

? ? ? ?19000 .data ? ? ? ? 1000 .pdata ? ? ? ? 4000 .rdata ? ? ? ? 1000 .reloc ? ? ? ? 1000 .rsrc ? ? ? ?16000 .text ? ? ? ? 1000 .trace

C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin>dumpbin /headers D:\ap8ae8.dll Microsoft (R) COFF/PE Dumper Version 10.00.40219.01 Copyright (C) Microsoft Corporation. ?All rights reserved.

?

为什么80%的码农都做不了架构师?>>> ??

在VC2010中通过platform选择32位还是64位编译时,可以通过下面的条件编译指令来判断:

[cpp] view plain copy

?

//?32位编译??#ifdef?_M_IX86??#pragma?comment(lib,"QDPay_mt.lib")??#endif?//?_M_IX86??//?64位编译??#ifdef?_M_X64??#pragma?comment(lib,"QDPay_mt64.lib")??#endif?//?_M_X64??

?

参见MSDN:https://www.sxzhongrui.com/en-us/library/b0084kay.aspx

?

相关的预定义宏:

?

_M_IX86 : 32bit处理器

_M_AMD64 : 64bit AMD处理器 (VC2008以前)

_M_X64 : 64bit AMD and Intel处理器(VC2008及以后),

_M_IX64 : 64bit Itanium处理器

?

_WIN32 : Defined for both 32bit and 64bit processor

_WIN64 : Defined for 64bit processor

转载于:https://www.sxzhongrui.com/u/1777508/blog/1836302

以vs2010为例,进入以下目录

C:\Program Files\Microsoft Visual Studio 10.0\VC\bin

打开控制台窗口,运行vcvars32.bat,设置vs运行环境

输入以下命令进行查询

dumpbin /headers path

其中path为lib或dll文件的路径,并且加上该文件的名字。

输出的信息即可查询文件位数。