!"#$%&!!%
Abstract
'(()*+
(,-.,#*# '(
)+)+
#
Note
'((
-.*
(*((.(
'((
% !(
'(((-/
(/00... 0.(0#00.0
Visual Studio, Microsoft Portable Executable and Common Object File Format Specification - 2
Legal Notice
Microsoft Portable Executable and Common#Object#File#Format Specification
!
Note: This specification is provided to aid in the development of certain development tools for the
Microsoft Windows platform. However, Microsoft does not guarantee that it is a complete specification in
all respects, and cannot guarantee the accuracy of any information presented after the date of
publication. Microsoft reserves the right to alter this specification without notice.
.*##""#
#)#+(#(
*#*.((1(#(.
2.2**-.
#*.(#*(.(#( -(*(*(
#*((#
#.2###)
((#**(.+#.((.
#(#*(*(
##.*((*(
*####*((*(*#
(.
3&!!% 4*(
This specification is provided “AS IS.” Microsoft makes no representations or warranties,
express, implied, or statutory, as (1) to the information in this specification, including any
warranties of merchantability, fitness for a particular purpose, non-infringement, or title; (2) that
the contents of this specification are suitable for any purpose; nor (3) that the implementation of
such contents will not infringe any third party patents, copyrights, trademarks, or other rights.
Microsoft will not be liable for any direct, indirect, special, incidental, or consequential damages
arising out of or relating to any use or distribution of this specification.
"55677-8&-.-.6'-.
-.(*22(9
0( (#(#(
2(.
'(**2##**#
*(.(.(
.
!"#$%&!!%
3&!!: 4*(
Visual Studio, Microsoft Portable Executable and Common Object File Format Specification - 3
Contents
$; :
&. %
8< =
>"5)?*#+ =
:*)?*#+ =
%<)?*+ =
=('#
( $!
@<)?*#+ $$
$!<)?*#+ $&
$$<-.")?*#+ $8
$&<55)?*#+ $%
$8')<+ $=
$>* $@
$:;)#+ &$
$%(( &&
$=5 &&
$)#+ &&
$@'#? &8
&!A6)5+ 88
&$#' 8:
& 8%
&86 8%
&>'# 8%
&:* 8
&%4## >!
&=4#$/5 >!
&4#&/ # >$
&@4#8/-2 >$
8!4#>/ >&
8$4#:/5 >&
8&54')#+ >8
88A'25)#+ >>
8>*' >>
8:'(4')?*#+ >:
8%5 >:
8=5#"A?')?*#+ >:
8'(5#"A5#' >:
8@4 >%
>!6 >%
>$< >%
>&5#?4' >%
>85#?6' >=
>>5#B?4'' >=
>:5#9?4' >=
>% >=
>='( * :!
>5*5#)?*#+ :!
>@5*'# :$
:! *C)#+ :&
:$ *C)#+ :&
:& *C)#+ :&
:8 *C')#+ :&
:>A25*? :&
::'( )#+ :&
:%'( )?*#+ :&
:=5#' :8
:4' :>
:@6' ::
%!' ::
%$6' ::
!"#$%&!!%
3&!!: 4*(
Visual Studio, Microsoft Portable Executable and Common Object File Format Specification - 4
%&'( :%
%8?5#' :%
%>?A2' :=
%:<06' :=
%%?4' :=
%='( :=
%'( )?*#+ :
%@BB2 :@
=!B'# :@
=$'( %!
=&'('A5# %$
=8'A2 %&
=>'(A*)?*#+ %8
=:A*5# %8
=%A*A# %8
=='( %:
=5#' %:
=@5# %%
!5#* %%
$5# %%
&'( )#+ %=
8'( %=
>4()A#+ %=
:4(* %
%4(< %
=A2 %@
A2 =!
@A* =$
@!?A# =$
@$?< =&
@&?'# =&
@8?6'# =8
44/*4(?*<( =>
4 $-(4(?*<(D =>
4 &-(4(?*<(D =>
=:
!"#$%&!!%
3&!!: 4*(
Visual Studio, Microsoft Portable Executable and Common Object File Format Specification - 5
1 General Concepts
'(()*+
(,-.,#*# '(
)+)+
# '(EF(((
(
((*(((
.*/
6 5
4(
.(* 4
.(G(
#.(.(
(**(* 4
**(2(
#* '(#
#((**(
* '(*#
(#*2##*(#
( '(
((.(*
0 4(
'(((
(#(("#
'(.((*
#(2)(+(
)(*+ ?(.(
.((2
2 4(2(.(
,
4(*(2 '(2
*.((#(
'(EF###
"**
!
4((((
H*
*(
4 ?*(
#.((
(* '(4
.#.((2)
+
?4*
#* ?(4
..()(
+.((*2*
#((4
(H
!"#$%&!!%
3&!!: 4*(