2015-11-20 35 views
-1

采取了一个例子,在命令提示符我们给的,CSC编译器在哪里生成PE文件?

>csc /out:"C:\HelloWorld.exe" "C:\HelloWorld.cs" 

比CSC编译器会生成PE文件。那个文件将保存在哪里?

+1

你说你想要PE文件的位置:在'C:\ Helloworld.exe'中。 C#编译器不会生成IL文件;这就是生成IL文件的ILDASM。我无法弄清楚你在这里问什么;你似乎对C#编译器生成的文件有一些错误的看法。 –

+0

Downvoters。我可否知道拒绝的理由? – Karthikeyan

+0

Eric Lippert:我想知道在构建.cs文件时pe文件将保存在哪里。 – Karthikeyan

回答

2

PE executable format中的EXE将在out参数中指定,如果不指定,则在当前文件夹中指定。

不知道你在说什么“IL”文件,但IL(或者说是字节码)+元数据是EXE文件的一部分。

如果您需要PE格式本身的详细信息 - 可以在MSDN上找到规格:PE Format

如果您正在寻找IL,您可以使用ILDASM(.Net SDK的一部分)或许多其他.Net反编译器来查看IL。如果你想快速实验,看到IL - LinqPad.net是非常方便的工具。

+0

我可以知道生成pe文件的命令吗?因为在给出上述命令时没有生成pe文件 – Karthikeyan

+1

@Karthikeyan:.EXE文件是一个PE文件。 PE代表“便携式可执行文件”。 EXE是一个可执行文件。 –

+0

因此,编译.pe文件时不会生成只有.exe会生成。对 ? – Karthikeyan