我试图在C#中构建.sln。我有以下代码。在C#中构建.sln可执行文件
try
{
Console.WriteLine("Building Solution...\n");
string projectFileName = Directory.GetCurrentDirectory() + "\\build\\Solution.sln";
ProjectCollection pc = new ProjectCollection();
Dictionary<string, string> GlobalProperty = new Dictionary<string, string>();
GlobalProperty.Add("Configuration", "Release");
GlobalProperty.Add("Platform", "x86");
BuildRequestData BuidlRequest = new BuildRequestData(projectFileName, GlobalProperty, null, new string[] { "Build" }, null);
BuildResult buildResult = BuildManager.DefaultBuildManager.Build(new BuildParameters(pc), BuidlRequest);
catch (Exception e)
{
Console.Write("Error:" + e.Message);
Console.ReadLine();
}
Console.WriteLine("Completed Solution build...\nPress any key to continue...");
它不thow一个错误,它只表示Completed Solution build...
但\bin\Release
我找不到可执行文件。我忘记了什么,或者我该如何检查它?
您的解决方案是否定义了一个'x86'平台?默认情况下,Visual C#项目通常只定义“任何CPU”。 – heavyd
你可以明确指出:'GlobalProperty.Add(“OutputPath”,Directory.GetCurrentDirectory()+“\\ MyOutput”);' – Belogix
'任何CPU'和'GlobalProperty.Add(“OutputPath”,Directory.GetCurrentDirectory()+ “\\ build \\ Solution \\ bin \\ Release”);'没有任何区别。 – Alex