Click here to Skip to main content
16,020,315 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
Are all .EXE files of dotnet ?
Posted

No way. First of all, *.EXE is nothing but a pattern for a file name, it is used by the Shell but internally means nothing; the actual use of the file is defined by its internal structure, often a signature, which is "MZ" in this case, "ZM" is also allowed. This is the Portable Executable file, which also includes DLLs and a lot more. Please see:
https://en.wikipedia.org/wiki/Portable_Executable[^].

.NET files is only a subset of PE files. Please see the section of the same article, https://en.wikipedia.org/wiki/Portable_Executable#.NET.2C_metadata.2C_and_the_PE_format[^].

Interestingly, on non-Microsoft systems, CLI PE files (.NET executable files) can be used, without recompilation, as CLR executable files, under Mono. In such systems, *.EXE and *.DLL really indicate CLI files. However, this is not a strict rule, because, as I already said, the file name pattern does not matter much, especially in *NIX OS, where so called historical concept of "file name extension" never existed, in contrast to Windows, where it came from obsolete file systems.

See also:
http://en.wikipedia.org/wiki/Common_Language_Runtime[^],
https://en.wikipedia.org/wiki/Common_Intermediate_Language[^],
https://en.wikipedia.org/wiki/Mono_%28software%29[^],
http://www.mono-project.com/[^].

—SA
 
Share this answer
 
v3
An exe file is a file that Windows uses as executable. Windows does not care how it was created, it just knows how to execute it. Several other OS use different methods for marking files as per their properties; Windows uses file extensions (.exe in this case).
So, you may create an .exe files using several methods in several languages. It may be either C, C++, python etc.
Finally Any language can be used to create .exe files
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900