EXE只是一个带有main方法的DLL吗?

Ris*_*abh -1 c#

我偶然发现了一个关于程序集,DLL和EXE文件之间确切区别的问题.

以下陈述是否正确?

如果DLL有一个main方法,那么它会变成可执行文件吗?(可执行程序)

Eri*_*ert 12

以下语句是否正确:如果DLL具有main方法,那么它将成为可执行文件?

该陈述不正确.

DLL和EXE文件都使用PE文件格式.DLL和EXE之间的区别在于DLL在IMAGE_FILE_HEADER部分的Characteristics字段中设置了标志0x2000.

更多详情可在这找到:

PE内部对等: Matt Pietrek 的Win32可移植可执行文件格式之