Free tool: AssemblyInfo

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: , , ,