0

我正在使用以下批处理脚本代码来编译 c# 代码,但我看到的是一个黑色窗口 (csc.exe) 闪烁,我看不到创建的 exe 文件。

start /wait C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\csc.exe /out:aa.exe Program.cs
start aa.exe
pause

我想在与 Program.cs 相同的位置创建文件 aa.exe

基本上我想要的是动态编译 Program.exe 中的代码并运行它。我是

using this following references:  
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Threading;
using System.Net.Mail;
4

3 回答 3

3

不要忘记在命令中添加引用:

/reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\<dotnet_version>\Microsoft.CSharp.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\<dotnet_version>\mscorlib.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\<dotnet_version>\System.Core.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\<dotnet_version>\System.dll"
于 2012-11-21T05:36:16.960 回答
2

start与其使用启动程序,不如考虑cmd. 如果您使用cmd /K它,它应该在命令运行后保持打开状态,让您有时间检查输出。

于 2012-11-21T03:33:00.540 回答
1

采用:

csc.exe /out:StackBackTraceOrRT_FATAL.exe StackBackTraceOrRT_FATAL.cs

或者你想使用` CSharpCodeProvider

于 2012-11-21T03:29:55.267 回答