Have you ever come across an assembly file you wanted to know as much as possible about, without running it? Have you ever had problems with deployment, because you weren't sure what version of a DLL you copied on a machine? How do you tell the difference between a 32 bit and 64 bit assembly anyway?
I created a little command line tool, which dumps a lot of information about an assembly. For example, here is the output of the tool when run against itself:
AssemblyInfo (c) 2007 Kris Vandermotten
File:
AssemblyInfo.exe
COFF Header:
File is executable (EXE).
File is 32 bit.
Target machine: I386
PE Header:
File is a 32 bit PE file.
Linker Version: 8.0
Image Base Address: 0x00400000
Section Alignment: 8192
File Alignment: 4096
OS Version: 4.0
Image Version: 0.0
Subsystem Version: 4.0
Subsystem: WINDOWS_CUI
Version information:
File Version: 1.0.0.0
Product Version: 1.0.0.0
Language: Language Neutral, Codepage 1200
OriginalFilename: AssemblyInfo.exe
FileDescription:
AssemblyInfo
FileVersion: 1.0.0.0
InternalName: AssemblyInfo.exe
CompanyName: Kris Vandermotten
LegalCopyright: Copyright (c) 2007 Kris Vandermotten
LegalTrademarks:
ProductName: AssemblyInfo
ProductVersion: 1.0.0.0
PrivateBuild:
SpecialBuild:
Comments:
Assembly:
Name: AssemblyInfo, Version=1.0.0.0, Culture=neutral, PublicKeyToken=e56d967875f629d3
Hash Algorithm: SHA1
Processor: MSIL
Runtime Version: v2.0.50727
EntryPoint: Void Main(System.String[]) in AssemblyInfo.Program
Modules:
AssemblyInfo.exe
PE Kind: ILOnly
Machine: I386
X509 Certificate: none
Referenced Assemblies:
mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Assembly Attributes:
[System.Reflection.AssemblyProductAttribute("AssemblyInfo")]
[System.Runtime.CompilerServices.RuntimeCompatibilityAttribute(WrapNonExceptionThrows = True)]
[System.Runtime.InteropServices.GuidAttribute("5eb90c8e-1aa6-4739-917e-0d4117b78ba9")]
[System.CLSCompliantAttribute((Boolean)True)]
[System.Runtime.InteropServices.ComVisibleAttribute((Boolean)False)]
[System.Reflection.AssemblyTrademarkAttribute("")]
[System.Reflection.AssemblyCopyrightAttribute("Copyright (c) 2007 Kris Vandermotten")]
[System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[System.Reflection.AssemblyCompanyAttribute("Kris Vandermotten")]
[System.Reflection.AssemblyConfigurationAttribute("")]
[System.Reflection.AssemblyDescriptionAttribute("")]
[System.Reflection.AssemblyTitleAttribute("AssemblyInfo")]
[System.Diagnostics.DebuggableAttribute((System.Diagnostics.DebuggableAttribute+DebuggingModes)2)]
[System.Runtime.CompilerServices.CompilationRelaxationsAttribute((Int32)8)]
Download AssemblyInfo and enjoy.
Technorati Tags:
.NET,
tool,
download,
free