public static void TraceInformationAssemblySplash(AssemblyInfo assem_info)
        {
            Trace.TraceInformation(string.Empty);
            Trace.TraceInformation("{0} Version {1}", assem_info.AssemblyName.Name, assem_info.AssemblyName.Version);
            Trace.TraceInformation(assem_info.ProductString);
            Trace.TraceInformation(assem_info.ConfigurationString);
            Trace.TraceInformation(assem_info.CopyrightString);
            Trace.TraceInformation(assem_info.TrademarkString);
            Trace.TraceInformation(assem_info.CompanyString);

            Trace.TraceInformation("User: {0}, Domain: {1}", Environment.UserName, Environment.UserDomainName);
            Trace.TraceInformation("Executing on: {0}, PID: {1} ({2}){3}", Environment.MachineName, Process.GetCurrentProcess().Id,
                Process.GetCurrentProcess().ProcessName, Environment.Is64BitProcess ? ", 64-bit" : "");
            Trace.TraceInformation("OS: {0}{1}", Environment.OSVersion, Environment.Is64BitOperatingSystem ? " (64-bit)" : "");
            Trace.TraceInformation("Common Language Runtime Version {0}", Environment.Version);
            Trace.Flush();
        }
 public static void WriteAssemblySplash(AssemblyInfo assem_info)
 {
     WriteAssemblySplash(assem_info, writer: System.Console.Out);
 }