in src/Microsoft.VisualStudio.SlnGen/Program.cs [245:301]
private static int Execute(string[] args, IConsole console)
{
try
{
for (int i = 0; i < args.Length; i++)
{
if (args[i].Equals("/?"))
{
args[i] = "--help";
}
if (args[i].Equals("/nologo", StringComparison.OrdinalIgnoreCase) || args[i].Equals("--nologo", StringComparison.OrdinalIgnoreCase))
{
NoLogo = true;
}
// Translate / to - or -- for Windows users
if (Utility.RunningOnWindows)
{
if (args[i][0] == '/')
{
if (args[i].Length == 2 || (i >= 3 && args.Length > i && args[i].Length >= 3 && args[i][2] == ':'))
{
args[i] = $"-{args[i].Substring(1)}";
}
else
{
args[i] = $"--{args[i].Substring(1)}";
}
}
}
}
if (!NoLogo)
{
console.WriteLine(
Strings.Message_Logo,
ThisAssembly.AssemblyTitle,
ThisAssembly.AssemblyInformationalVersion,
IsNetCore ? ".NET Core" : ".NET Framework");
}
return CommandLineApplication.Execute<ProgramArguments>(console, args);
}
catch (Exception e)
{
TelemetryClient.PostException(e);
Utility.WriteError(e.ToString());
return 2;
}
finally
{
TelemetryClient.Dispose();
}
}