Corflags Exe
- The CorFlags Conversion tool allows you to configure the CorFlags section of the header of a portable executable image.This tool is new in the.NET framework version 2.0.
- Where can I find the CorFlags.exe tool? I made full search of my hard disk drive, but it was not found. I have:.NET Framework 4.0, Visual C# 2010 Express, Visual C++.
Corflags is the inbuilt tool of Visual Studio which can be used to find out the type of.dll i.e 32 bit, 64 bit or any CPU in.Net application. This tool is available in Visual studio 2005 onward.
![Exe Exe](https://images2015.cnblogs.com/blog/490541/201512/490541-20151203232549236-1464296322.png)
![Exe Exe](https://chrizyuen.files.wordpress.com/2011/04/zrclip_002n3b52df2f.png?w=677&h=342)
![Corflags Exe Corflags Exe](https://theniceweb.com/wp-content/uploads/2018/01/IntelliTrace_ScreenShot-825x510.png)
There's a nice little (and dangerous) tool present in every.NET Framework SDK. It's called corflags.exe. Pedal pad patch pad. If you run it, you might get something like this: C: corflags testme.exe Microsoft (R).NET Framework CorFlags Conversion Tool. Version 2.0.50727.42 Copyright (c) Microsoft Corporation.
All rights reserved. Version: v2.0.50727 CLR Header: 2.5 PE: PE32 CorFlags: 1 ILONLY: 1 32BIT: 0 Signed: 0 What this tells you (via the CLR Header) is that testme.exe assembly hides a.NET Framework 2.0 compiled code. All 2.0 framework code will have 2.5 header version, while all 1.0/1.1 compiled code will have 2.0 header version. It's a bit of a mess, but noone can change history.
Nov 29, 2013 A VB.net application won't run on 64 bit Windows 7. I read that I can use corflags.exe to run the program but can't find it. I unsuccessfully tried.
Next important value is PE. It tells you whether this assembly is a 32-bit or 'any cpu' compiled assembly. If PE value should be 'PE32+' than you could conclude that this is a 64-bit capable assembly.
The 32BIT property, contrary to its name, does not represent bitness of the assembly. In this case, 32BIT property holds a value of 0, which would mean that this is a 64-bit assembly. Actually this assembly can be run anywhere, since it was compiled with agnostic setting of 'any cpu'.
Corflags Exe
If I wanted to, I could turn this knob using the following: corflags.exe /32BIT+ testme.exe Now, this assembly would always execute under WoW64 (emulated 32-bit environment on a 64-bit box). In a case where this execution would not be possible - ie. Run against an ia64 box - one would get a BadImageFormatException exception. There is no way (for now) to demand execution in a 64-bit process because this thing is not controled by a metadata flag. Rather it's controled at compile time and compiler has to emit PE32+ compatible code. Recap: CLR Header property denotes compiler version which was used to produce the assembly. PE property tells you whether this assembly is either 32-bit (PE32), 'any cpu' (PE32) or 64-bit (PE32+).
Corflags Exe
If the 32BIT property is set it mandates execution in a 32-bit process, if the platform allows it.