日期:2014-05-20  浏览次数:20696 次

asp.net如何动态编译c语言?
我想做一个在线考试系统,用asp.net(C#)做,想要实现一个功能:用户通过客户端提交一些C代码,在服务器端将这些C代码进行编译,并得到编译结果,并将结果放到一个变量中。这该怎么实现啊 ?

------解决方案--------------------
偷懒的办法,httpwebrequest调用http://codepad.org
------解决方案--------------------
引用:
楼上能说的详细点吗?codepad.org 这个网站的效果确实是我想要的效果,但怎样调用啊??


httpwebrequest模拟浏览器提交

具体google。
------解决方案--------------------
你也可以用asp.net调用DOS命令试试,用命令行执行C编译并得到结果,但是要注意IIS权限配置

你可以参考下
   下面是一段调用cmd.exe的方法: 
    public bool cmd(string argm) 
    { 
    //开始创建文件 
    Process p = new Process(); 
    p.StartInfo.FileName = "cmd.exe"; 
    p.StartInfo.UseShellExecute = false; 
    p.StartInfo.RedirectStandardInput = true; 
    p.StartInfo.RedirectStandardOutput = true; 
    p.StartInfo.RedirectStandardError = true; 
    p.StartInfo.CreateNoWindow = true; 
     
    try 
    { 
    p.Start(); 
    p.StandardInput.WriteLine(argm); 
    p.StandardInput.WriteLine("exit"); 
    p.StandardOutput.ReadToEnd(); 
    p.Close(); 
    return true; 
    } 
    catch 
    { 
    return false; 
    } 
    }