The best bet would be to grab the C s include file header called winnt.h, found in your standard VS Professional (usually C:Program FilesMicrosoft Visual Studio 9.0VCinclude) and from there, load the .EXE into a PE Dumper of some sort, or use a Hex Dumper.
- Look at the DOS HEader from offset 0x0.
- The NT Header would immediately follow after the DOS header.
- The Machine ID is what you are looking for. The machine ID for CF (ARM/MIPS) would be 0x010C/0x0169, respectively. If you wish to invest more time in poking around.. read on,
- Then you have the Data directory immediately following after NT Header. It is the 15th data directory entry is the indication of whether the .EXE is .NET or not. If it is 0, then it is a native .EXE.
Combined together you can then tell if the executable is .NET and for the CF.
Look here for more details.
Hope this helps,
Best regards,
Tom.