diff --git a/ICSharpCode.Decompiler/CSharp/ProjectDecompiler/ProjectFileWriterDefault.cs b/ICSharpCode.Decompiler/CSharp/ProjectDecompiler/ProjectFileWriterDefault.cs index a536d72c7..dba1f0f4c 100644 --- a/ICSharpCode.Decompiler/CSharp/ProjectDecompiler/ProjectFileWriterDefault.cs +++ b/ICSharpCode.Decompiler/CSharp/ProjectDecompiler/ProjectFileWriterDefault.cs @@ -81,13 +81,14 @@ namespace ICSharpCode.Decompiler.CSharp.ProjectDecompiler w.WriteEndElement(); // string outputType; + PEHeaders headers = (module as PEFile)?.Reader.PEHeaders; - switch ((module as PEFile)?.Reader.PEHeaders.PEHeader.Subsystem) + switch (headers?.PEHeader.Subsystem) { - case Subsystem.WindowsGui: + case Subsystem.WindowsGui when !headers.IsDll: outputType = "WinExe"; break; - case Subsystem.WindowsCui: + case Subsystem.WindowsCui when !headers.IsDll: outputType = "Exe"; break; default: