C# 如何在VS2012中从解决方案文件创建可执行文件?

C# 如何在VS2012中从解决方案文件创建可执行文件?,c#,.net,C#,.net,我尝试过这段代码,其中proj\chancher2.sln是指向我正在尝试构建的另一个解决方案文件的路径 private void button1_Click(object sender, EventArgs e) { try { string projectFileName = @"proj\chancher2.sln"; ProjectCollection pc = new ProjectCo

我尝试过这段代码,其中
proj\chancher2.sln
是指向我正在尝试构建的另一个解决方案文件的路径

   private void button1_Click(object sender, EventArgs e)
    {

        try
        {

            string projectFileName = @"proj\chancher2.sln";

            ProjectCollection pc = new ProjectCollection();

            Dictionary<string, string> GlobalProperty = new Dictionary<string, string>();

            GlobalProperty.Add("Configuration", "Debug");

            GlobalProperty.Add("Platform", "x86");

            //Here, we set the property

            GlobalProperty.Add("OutputPath", @"D:\Output");

            BuildRequestData BuidlRequest = new BuildRequestData(projectFileName, GlobalProperty, null, new string[] { "Build" }, null);

            BuildResult buildResult = BuildManager.DefaultBuildManager.Build(new BuildParameters(pc), BuidlRequest);

        }

        catch (Exception E) {
            MessageBox.Show(E.Message);
        }
    }
private void按钮1\u单击(对象发送者,事件参数e)
{
尝试
{
字符串projectFileName=@“proj\chancher2.sln”;
ProjectCollection pc=新建ProjectCollection();
Dictionary GlobalProperty=新字典();
添加(“配置”、“调试”);
添加(“平台”、“x86”);
//在这里,我们设置属性
添加(“OutputPath”,@“D:\Output”);
BuildRequestData BuildRequest=新的BuildRequestData(projectFileName,GlobalProperty,null,新字符串[]{“Build”},null);
BuildResult BuildResult=BuildManager.DefaultBuildManager.Build(新的BuildParameters(pc),buildRequest);
}
捕获(例外E){
MessageBox.Show(E.Message);
}
}
当我点击按钮时,我没有得到任何错误,但是当我转到调试文件夹时,我没有发现编译的可执行文件。当我转到D:\Output文件夹时也是如此。什么都没有

可执行文件在哪里。或者上面的代码有错误吗


如果运行生成后输出目录仍然为空,则可能生成未成功,我们将非常感谢您的帮助。您可能需要查看
BuildResult.OveralResult
以查看。它将使用一个简单的“失败/成功”枚举指示生成是否成功,如中所示

我在以这种方式使用MSBuild方面没有太多经验,但快速浏览一下MSDN,BuildResult似乎会告诉您想要知道它失败的原因(如果它确实失败了)。

的可能重复项