views:

514

answers:

9

How do I tell if an executable is a .NET application?

I prefer not to have to install Visual Studio. But if I have to I will. A commandline program is preferred.

+2  A: 

Drop it into Reflector and it will be de-compiled.

Dead account
+8  A: 

An application is a .NET executable if it requires mscoree.dll to run. You can check for this using the Dependency Walker, but in general any tool that gives you the list of required DLL's to run will do.

If you want to know if a running process is a .NET process, I can only recommend Process Explorer. This tool will give you a lot of information about the process, including some .NET properties.

Dave Van den Eynde
+12  A: 

PEVerify will do that :)

leppie
+6  A: 

Or simpler : use the Process Explorer. Free download here

Andrei Rinea
+4  A: 

Process Explorer colors dotNet applications using yelow color by default. That should be enough :)

majkinetor
A: 

If it runs really slow but looks like a standard Windows app, it's .NET.

If it runs really, really slow and looks ugly too, it's Java.

If it's fast and looks good, it's Delphi.

If it's just fast, it's C/C++.

:-)

ObiWanKenobi
+1 just because it gave me a good morning laugh
j0rd4n
Nice explanation :D
majkinetor
-1 for bitching .net. It's not really slow.
Mehrdad Afshari
you mixed up .net and delphi :p
Pondidum
+1  A: 

You could use ILDasm.exe whitch is installed by default together with installing the .Net Framework SDK on your machine (look in C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin) Just open ildasm.exe en drop de the assembly in it, if it's dissambled it's a .net, if you receive an error it's not.

Mez
+1  A: 

"I prefer not to have to install Visual Studio. But if I have to I will. A commandline program is preferred."

You don't have to install Visual Studio just to run a .NET application - just the .NET framework which you can download on it's own.

But, if you want to determine whether it's a .NET application, you can download and use .NET Reflector or use ILDasm, which comes with the .NET framework SDK.

Mark Ingram
ILDasm comes from the .NET Framework SDK, which is downloadable freely and doesn't require Visual Studio.
Dave Van den Eynde
+1  A: 

Simpler yet:

  1. Open the properties, look at the tab "Version", if under "Other information" you see a property called "Assembly version" then it is likely a .NET application.

  2. Open the EXE or DLL with notepad or similar app and look for the text "mscorlib" (without the quotes). If you find it, it will most likely be a .NET application.

moin